git hub protected branch

권태형·2023년 7월 5일
0

git

목록 보기
3/3
post-thumbnail

우연히 개인프로젝트를 위해서 레포에서 브랜치를 왔다갔다 하다가 뭔가 경고문이 보여서 찾아보게 되었다.

master브렌치를 제외한 다른 브렌치에서는 위와같이 경고문이 발생하지 않지만, master브랜치에서는 가장 위의 이미지와 같이

Your master branch isn't protected
Protect this branch from force pushing or deletion, or require status checks before merging. Learn more

라는 경고 문구가 발생한다. 마스터 분기가 보호되지 않습니다. 강제 푸시 또는 삭제로부터 이 분기를 보호하거나 병합하기 전에 상태 확인을 요구하십시오.라고 하는데 아무리 public으로 공개된 코드라고 하지만 collaborator가 없으면 누군가 따로 강제푸시를 하거나 삭제할 일은 없을 텐데.. 내 실수를 방지하기 위함인가? 라는 의문이 들고 Learn more로 들어가 어떠한 내용인지 알아보았다.

내 의문과 일치했다. 같이 공동 작업을 하는 collaborators로 인해 강제푸시를 하거나 삭제가 될 수 있을 경우를 방지하기 위해 분기를 보호할 수 있도록 제약을 걸어주는 시스템이었다.

물론 강제푸시나, 브랜치의 삭제가 임의적으로 이루어 져서는 안되지만, 또한 이 시스템은 PR이나 merge가 이루어지기 전에 제약을 걸면서 배포용 브랜치에 적용되기 전에 한번 걸러주는 역할을 해 줄 수 있다. 이러한 기능으로 인해 우리는 배포가 되는 브랜치 내용에 문제가 발생하기 전에 더블체크를 할 수 있을 것이다.

적용방법 또한 상세하게 적혀있었다. 하지만 내 상황과는 조금 달랐다. 설명에서는 레포를 선택하고 ⚙setting에 들어가서 사이드의 "Code and automation"섹션의 Branches를 클릭하고 Branch protection rules에서 Add rule를 클릭하라고 했지만,

나의경우 섹션의 Branches만 클릭해도 바로 add branch protection rule이라는 버튼이 나오고 클릭은 진행하여 바로 설정할 수 있는 환경이었다.

Branch name pattern에는 내가 보호하고 싶은 브렌치 이름을 적고 (ex: master) 아래의 체크항목을 통해서 여러 보호항목을 선택하여 적용할 수 있다.

이외 에도 강제푸시나 브랜치 삭제의 권한을 부여할 수 있는 항목 또한 체크할 수 있다.

protected branch를 이용해서 자신의 프로젝트에 맞게 배포브랜치를 보호해보자.

profile
22년 12월 개발을 시작한 신입 개발자 ‘권태형’입니다. 포스팅 하나하나 내가 다시보기 위해 쓰는 것이지만, 다른 분들에게도 도움이 되었으면 좋겠습니다. 💯컬러폰트가 잘 안보이실 경우 🌙다크모드를 이용해주세요.😀 지적과 참견은 언제나 환영합니다. 많은 댓글 부탁드립니다.

0개의 댓글