SCM/Git

[Git & GitHub 13] Workflow - 브랜치 보호규칙(branch protection rules)

ride-dev 2024. 5. 19. 16:52

1. GitHub Repository 설정 페이지 들어가서 브랜치 보호 규칙 추가하기

 

2. 브랜치 이름 패턴을 설정하기

/feature, /release 등으로 설정하여 특정 패턴을 가진 브랜치에 규칙을 적용할 수 있습니다.

main 브랜치에 대한 규칙

Require a pull request before merging

merge하기 전에 PR하도록 강제하기

Require approvals

승인 최소 인원수 설정

Dismiss stale pull request approvals when new commits are pushed

새 커밋이 push될 때, 과거 PR 승인을 무효화

Require review from Code Owners

코드 소유자도 리뷰하도록

Require approval of the most recent reviewable push

push한 사람 이외의 사람이 승인하도록

Require conversation resolution before merging

merge하기 전, 상태 검사(CI 도구 - GitHubActions, Jenkins 등 활용) 통과 필수

Require branches to be up to date before merging

branch가 최신 상태일 때 merge 가능하도록

Require conversation resolution before merging

논의 후 merge 가능하도록

Require signed commits

commit에 서명이 있어야 함

Require linear history

패턴과 일치하는 브랜치에 push되는 것을 방지

Require deployments to succeed before merging

특정 환경에 배포 성공 후 merge 가능하도록

Lock branch

읽기 전용으로 설정(push 불가)

Do not allow bypassing the above settings

위의 설정이 브랜치 보호 우회 권한을 가져도 적용되도록 함

Rules applied to everyone including administrators

모든 사용자에게 적용되는 규칙

Allow force pushes

push 권한이 있는 사용자에 대한 강제 push 설정

(모두 혹은 특정 사용자)

Allow deletions

push 권한이 있는 사용자가 branch 삭제 가능

728x90