{"meta":{"title":"GitHub Desktop에서 Git 후크 작업","intro":"셸 환경에서 Git 훅을 실행할 수 있으며, GitHub Desktop에서 직접 커밋 훅을 우회할 수 있습니다.","product":"GitHub Desktop","breadcrumbs":[{"href":"/ko/desktop","title":"GitHub Desktop"},{"href":"/ko/desktop/making-changes-in-a-branch","title":"브랜치에서 변경하기"},{"href":"/ko/desktop/making-changes-in-a-branch/working-with-git-hooks-in-github-desktop","title":"Git 후크 활용"}],"documentType":"article"},"body":"# GitHub Desktop에서 Git 후크 작업\n\n셸 환경에서 Git 훅을 실행할 수 있으며, GitHub Desktop에서 직접 커밋 훅을 우회할 수 있습니다.\n\n## GitHub Desktop에서 Git 훅에 대해\n\nGit 후크는 커밋, 푸시 또는 병합 전후와 같이 Git 워크플로의 특정 지점에서 자동으로 실행되는 스크립트입니다. 코드 품질 표준을 적용하거나, 테스트를 실행하거나, 기타 자동화된 작업을 수행하는 데 사용할 수 있습니다.\n\nGitHub Desktop은 구성된 셸 환경에서 Git 훅을 실행합니다. 후크는 명령줄에서 Git을 실행할 때와 동일한 환경 변수 및 도구에 액세스할 수 있습니다. 즉, 버전 관리자(예: `nvm` 또는)를 통해 설치된 도구에 의존하거나 `rbenv`셸 구성 파일(예: `.bash_profile` 또는 `.zshrc`)에 의존하는 후크가 올바르게 작동합니다.\n\n후크 출력은 GitHub Desktop UI에 실시간으로 표시되며, 터미널의 색상 및 서식이 유지되므로 사용자는 후크의 출력을 쉽게 읽고 디버그할 수 있습니다.\n\n## 커밋 후크 우회\n\n사전 커밋이나 커밋 메시지 후크를 실행하지 않고 커밋하려면 GitHub Desktop에서 이를 우회할 수 있습니다. 이는 명령줄에서 사용하는 `git commit --no-verify` 것과 같습니다.\n\n커밋하기 전에 또는 후크가 실패한 후 후크를 선제적으로 바이패스할 수 있습니다.\n\n### 커밋 전에 훅을 우회하기\n\n1. \"변경 내용\" 탭에서 커밋 메시지를 작성합니다.\n2. 커밋 메시지 필드 옆에 있는 <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"Commit options\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg>를 클릭합니다.\n3. **커밋 후크 무시를** 선택합니다.\n4. **브랜치에 커밋**을 클릭합니다.\n\n### 실패한 훅을 우회하기\n\n커밋 훅이 실패하면 GitHub Desktop이 훅의 출력을 표시하고, 실패한 훅을 우회하여 커밋을 계속 진행할 수 있는 옵션을 제공합니다.\n\n1. GitHub Desktop에 표시된 훅 출력을 검토하세요.\n2. 오류에도 불구하고 커밋을 계속하려면 **커밋**을 클릭합니다.\n\n> \\[!WARNING]\n> 커밋 후크를 우회하면 팀이 의존할 수 있는 품질 및 안전 검사를 무시하게 됩니다. 의미를 이해하는 경우에만 후크를 무시합니다.\n\n## 추가 읽기\n\n* [GitHub Desktop에서 프로젝트 변경 내용 커밋 및 검토](/ko/desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project-in-github-desktop)\n* ```\n            공식 Git 참조의 [Git 훅 문서](https://git-scm.com/docs/githooks)\n  ```"}