Github auto assign (Reviewer)
깃을 사용하다 보면 최종적으로 PR을 수락하는 사람은 자주 변하지 않죠. 그러다 보니 PR 요청할 때마다 assigner를 추가하는데, 간단하긴 하지만 이 반복적인 작업을 자동으로 설정할 수 있는 방법이 있습니다. 게다가 동시에 여러 명이나 그룹 별로 관리할 수 있으니 장기적으로는 설정해 놓는 게 편리합니다.
01 간단한 건 CODEOWNERS
1. Create .github/CODEOWNERS in your repository
딱 한 단계, 위 경로로 파일을 생성한 뒤에 아래 내용처럼 입력하면 쉽게 끝납니다. 아래 예시에는 설명이 좀 많은데 다 코멘트이고 사용할 때 아래와 같이 하면 됩니다.
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# These owners will be the default owners for everything in the repo.
* @defunkt
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
*.js @octocat @github/js
# You can also use email addresses if you prefer.
docs/* docs@example.com
예1, 모든 파일에 대해 jay에게 확인받기
엄청 간단하죠? *의 이미는 다 아실 거고 @ 뒤에는 이름을 입력하면 됩니다.
* @jay
예2, 모든 js 파일에 대해 jay와 kim에게 확인받기
마찬가지로 매우 간단하게 아래와 같이 선언하면 바로 적용됩니다.
깃허브 아이디도 사용 가능하지만, 이메일로도 할 수 있죠.
*.js @jay kim@naver.com
02 상세 설정은 auto_assign.yml
1. Go to auto-assign app page
2. Add to GitHub
3. Please choose a repository
4. Create .github/auto_assign.yml in your repository
간단하게 정리하면 auto-assign 페이지에 접속하여 앱을 깃허브에 설치한 뒤, 본인의 깃 저장소를 선택하고 '.github/auto_assign.yml' 파일을 생성하고 아래 내용을 입력하면 됩니다.
# Set to true to add reviewers to pull requests
addReviewers: true
# Set to true to add assignees to pull requests
addAssignees: true
# A list of reviewers to be added to pull requests (GitHub user name)
reviewers:
- reviewerA
- reviewerB
- reviewerC
# A list of keywords to be skipped the process that add reviewers if pull requests include it
skipKeywords:
- wip
# A number of reviewers added to the pull request
# Set 0 to add all the reviewers (default: 0)
numberOfReviewers: 0
03 주의사항
유저명을 입력했는데도 작동하지 않을 경우 별명도 같이 입력해 보세요. 예를 들어 깃허브 개인 설정을 봤을 때 깃허브 아이디가 있고 깃허브에서 사용할 이름을 설정했다면, 둘 다 입력해보면 동작할 수 있습니다.
그리고 assigner를 입력하면 PR 할 때 바로 보이지는 않습니다. 이는 권한자를 삭제하지 못하도록 그러는 것 같습니다. PR을 올리고 나면 다음 화면에서는 적용이 된 걸 볼 수 있으며, 이제 approve 하지 않으면 merge를 할 수 없습니다.
'[개발] Programming > Tools' 카테고리의 다른 글
svn: E155038: Cant revert '{0}' without reverting parent - 오류 (0) | 2020.12.14 |
---|---|
구글 지메일로 다른 이메일 가져오기 (다른 이메일 주소 지메일로 받기) (0) | 2020.09.16 |
이클립스 웹 프로젝트가 인식이 안될 때 해결 방법 (0) | 2020.08.11 |
Github auto-assign: Pull Request 시 특정 assigner 지정 (0) | 2020.07.19 |
아웃룩(OutLook) 메일 탬플릿 등록, 사용 방법 (0) | 2020.06.13 |
댓글