코드 소유자와 자동화된 코드 검토 요청

3206 단어 githubproductivitygit
테스트, 린터, 빌드. 이러한 모든 것들이 CI/CD에서 자동화되는 경우가 매우 많습니다. 그러나 더 나아가 PR의 코드 검토를 수행하도록 개발자 할당을 자동화할 수 있습니다. 또한 코드의 다른 부분에 대해 다른 코드 소유자를 지정할 수도 있습니다.


🇨🇿 V češtině si lze článek přečíst na kutac.cz




코드 소유자는 새로운 기능이 아니며 2017년에 이미 GitHub blog에 도입되었습니다. 그러나 소규모 팀이나 개인의 경우 이 기능이 그다지 유용하지 않을 수 있습니다. 그래서 지금에서야 알게 되었습니다.

Gitlab supports code owners too, but only on a paid plan. So I wasn't able to test it. However, it should be the same, according to their documentation.



코드 소유자란 무엇이며 이를 정의하려는 이유는 무엇입니까?



코드 소유자를 통해 코드를 담당하는 개별 개발자 또는 전체 팀을 정의할 수 있습니다. 새 PR이 생성되면 소유자가 소유한 일부 파일이 변경된 경우 검토를 수행할 코드 소유자를 자동으로 할당합니다.

나중에 분기 설정에서 코드 소유자의 필수 검토 규칙을 지정할 수 있습니다. 그리고 일부 소유자가 PR을 승인할 때까지 아무도 코드를 병합할 수 없습니다.



코드 소유자로서의 팀



전체 팀을 코드 소유자로 지정할 수도 있습니다. 그런 다음 전체 팀이 코드 검토를 수행하도록 지정됩니다. 그러나 개인 개발자는 아닙니다. 개별 개발자를 지정하려면 팀 설정에서 이 기능을 켜야 합니다.

검토를 수행하도록 지정되지 않은 팀 구성원을 선택할 수도 있습니다. 우리 팀에서는 메인 아키텍트입니다. 팀이 코드 소유자이기 때문에 그는 여전히 코드 소유자입니다. 그러나 검토에 할당되지 않았습니다.

그를 일부 파일의 코드 소유자로 직접 지정하지 않는 한. 해당 파일이 변경되면 검토자로 지정됩니다. 그러나 팀원이 아니라 코드 소유자로서.



코드 소유자 정의



코드 소유자의 구성은 .github/CODEOWNERS 파일에 있습니다. 각 줄에는 한 명 이상의 개발자 또는 팀이 소유자인 파일 패턴이 포함됩니다. 나중에 일치하는 것이 이전 규칙보다 우선합니다.

파일 패턴은 .gitignore 파일과 동일하며 git 문서의 Pattern format section에 설명되어 있습니다.

최종 CODEOWNERS 파일은 주석을 포함하여 다음과 같을 수 있습니다.

# Global rule set for everything. And special cases exclude later
* @mycompany/be-code-reviewers

# Pipeline files are owned by Octocat
.github/workflows/ @octocat

# Index and htaccess.
# This rules override previous one. Need to specify all of them if required.
/index.php @mycompany/be-code-reviewers @octocat
/.htaccess @mycompany/be-code-reviewers @octocat

# Dependencies
composer.json @arxeiss
composer.lock @arxeiss
/vendor/ @arxeiss

# You can also remove code owner if needed.
/CHANGELOG.md
/version.txt



표지 이미지는 GitHub blog에서 가져온 것입니다.

좋은 웹페이지 즐겨찾기