반응형
깃허브 데스크탑으로 프로젝트 관리하기 강의 오픈!! (인프런 바로가기)
참고
GitHub RESTful API로 브랜치를 만드는 방법은 createRef를 이용한다.
const makeBranch = async (branchName) => {
const octokit = new Octokit({
auth: myKey,
});
const currentSHA = await getSHAforMain(octokit);
const result = await octokit.git.createRef({
owner: "bloodstrawberry",
repo: `${repo}`,
ref: `refs/heads/${branchName}`, // 새로운 브랜치 이름
sha: currentSHA, // 기반 커밋의 SHA
});
return result;
};
이때 기반이 되는 브랜치의 SHA가 필요하다. 여기에서는 메인을 기준으로 만든다.
const getSHAforMain = async (octokit) => {
const response = await octokit.git.getRef({
owner: "bloodstrawberry",
repo: `${repo}`,
ref: "heads/main", // main 브랜치의 이름
});
return response.data.object.sha;
};
브랜치를 삭제하는 방법은 deleteRef로 가능하다.
브랜치를 만들고 PR을 merge 후 불필요한 브랜치를 삭제할 때 사용할 수 있다.
const deleteBranch = async (branchName) => {
const octokit = new Octokit({
auth: myKey,
});
const result = await octokit.git.deleteRef({
owner: "bloodstrawberry",
repo: `${repo}`,
ref: `heads/${branchName}`, // 새로운 브랜치 이름
});
console.log("delete!!", result);
};
하지만 PR을 병합한 후, 자동으로 브랜치를 삭제하도록 설정하면 deleteBranch를 사용할 필요가 없다.
리포지토리에서 Settings를 선택한 후, 아래로 내려가보자.
Automatically delete head branches를 체크하면, 브랜치에서 PR이 merge된 후, 자동으로 삭제된다.
반응형
'개발 > Git, GitHub' 카테고리의 다른 글
깃허브 - 메일 알림 설정하기 (Settings for Email Notifications) (0) | 2023.09.02 |
---|---|
깃허브 - RESTful API로 PR 만들고 병합하기 (Create Pull Request and Merge) (0) | 2023.09.02 |
깃허브 - RESTful API로 브랜치 SHA 구하기 (Find Github Branch SHA blob) (0) | 2023.09.02 |
깃허브 - OAuth Access 토큰 발급 받기 (How to get GitHub OAuth Token) (1) | 2023.08.18 |
깃허브 - RESTful API로 1MB 이상 큰 파일 읽기 (Read 1MB GitHub Files with GET) (0) | 2023.07.20 |
댓글