CODEOWNERS 파일은 Pull Request를 작성할 때 검토 요청할 대상을 자동으로 추가하는 설정이다.
project의 root 폴더 경로에서 .github/CODEOWNERS 파일을 직접 생성하여 설정할 수 있다.
# 이 소유자들은 리포지토리 내의 모든 것에 대한 기본 소유자들입니다.
# 나중에 더 우선하는 일치가 없는 한,
# @global-owner1 및 @global-owner2는 누군가 pull request를 올릴 때 리뷰를 요청받을 것입니다.
* @global-owner1 @global-owner2
# 순서는 중요합니다! 마지막에 일치하는 패턴이 가장 우선권을 갖습니다.
# 누군가가 JS 파일을 수정하는 pull request를 열 때
# 전역 소유자(@global-owner1) 대신 @js-owner만 리뷰를 요청받게 됩니다.
*.js @js-owner #이것은 인라인 주석입니다.
# 이메일 주소를 사용할 수도 있습니다. 커밋 작성자 이메일처럼 사용됩니다.
*.go docs@example.com
# 팀도 코드 소유자로 지정할 수 있습니다. 팀은 @org/team-name 형식으로 식별해야 합니다.
# 팀은 리포지토리에 명시적으로 쓰기 권한이 있어야 합니다.
# octo-org 조직의 octocats 팀이 모든 .txt 파일을 소유합니다.
*.txt @octo-org/octocats
# 이 예에서, @doctocat은 리포지토리 루트의 build/logs
# 디렉토리 및 해당 하위 디렉토리의 모든 파일을 소유합니다.
/build/logs/ @doctocat
# `docs/*` 패턴은
# `docs/getting-started.md`와 같은 파일과 일치하지만
# `docs/build-app/troubleshooting.md`와 같은 더 깊은 계층의 파일은 일치하지 않습니다.
docs/* docs@example.com
# @octocat은 리포지토리의 어디에서든 apps 디렉토리의 모든 파일을 소유합니다.
apps/ @octocat
# @doctocat은 리포지토리 루트의 `/docs` 디렉토리와 해당 하위 디렉토리의 모든 파일을 소유합니다.
/docs/ @doctocat
# `/scripts` 디렉토리 내의 모든 변경 사항은 @doctocat 또는 @octocat의 승인이 필요합니다.
/scripts/ @doctocat @octocat
# @octocat은 `/logs` 디렉토리 내의 모든 파일을 소유합니다.
# `/build/logs`, `/scripts/logs`, `/deeply/nested/logs`와 같은 모든 `/logs` 디렉토리 내의 변경 사항은
# @octocat의 승인이 필요합니다.
**/logs @octocat
# `/apps` 디렉토리 내의 모든 파일은 리포지토리 루트에서의 것을 제외하고
# `/apps/github` 하위 디렉토리의 소유자가 비어 있습니다.
/apps/ @octocat
/apps/github
# `/apps` 디렉토리 내의 모든 파일은 리포지토리 루트에서의 것을 제외하고
# `/apps/github` 하위 디렉토리의 소유자가 @doctocat입니다.
/apps/ @octocat
/apps/github @doctocat
다만, 정책상 무료 사용자의 경우 Repository가 Public Repository 이여만 하고 여러 제약 사항들이 존재하긴 해서 이런 경우에는 git-actions을 사용하여 Pull Request 작성시 검토 요청을 추가할 수도 있다.
Github의 CODEOWNERS에 대한 자세한 사항은 아래 출처를 확인하면 된다.
출처
'개발 이야기 > Git' 카테고리의 다른 글
Git 편집기 nano에서 vim으로 변경하기 (0) | 2023.11.07 |
---|---|
GIT 명령어 정리 (0) | 2023.02.20 |