Git template 설정: git commit 메시지 규칙이 헷갈린다면

Git template 설정”을 하는 이유는 팀 또는 프로젝트에서 일관된 커밋 메시지를 유지하기 위해서입니다.

템플릿을 사용하면 모든 개발자가 일정한 커밋 규칙을 따르게 되어 가독성을 향상시키고 변경 사항을 추적하기 쉬워집니다.

git template를 설정하는 법은 아래와 같이 매우 쉽습니다.

1. Git template 설정을 위한 편집기 설정

git template는 git editor에서 자동으로 띄워주는 내용 입니다.

git template를 띄워주기 위해 우선 git editor를 수정해줍니다.

VIM을 git 편집기로 사용하고 싶으면 아래와 같이 입력합니다.

$ git config --global core.editor vim

VS code를 git 편집기로 사용하고 싶으면 아래와 같이 입력합니다.

$ git config --global core.editor "code --wait"
VS Code를 Git 편집기로 설정하기

2. Git template 작성

git editor에 자동으로 띄워줄 내용을 텍스트 파일로 작성합니다.

git 작업 디렉토리에 template.txt 와 같은 파일명으로 아래와 같은 template를 저장합니다.


#제목
#- 커밋 제목은 `커밋유형: 제목` 형태로 작성합니다.
#- 변경사항이 "무엇"인지 명확하게 기술합니다.
#- 커밋 유형의 첫 글자는 대문자로 작성합니다.
#- 콜론 뒤에는 공백을 한 번 추가하고, 마침표 및 특수 기호를 사용하지 않습니다.
#- 명령조로 작성하고, 50자 이내로 간결하게 표현합니다.
#- 영문으로 작성하는 경우, 첫 글자는 대문자로 시작하며 동사(원형)을 가장 앞에 명령어로 작성합니다.
#-Feat:             새로운 기능의 추가                               
#-Update:           원래 정상 동작하나 보완이 필요한 경우                    
#-Fix:              버그 수정                                    
#-Correct:          타입 변경, 이름 변경 등에 사용                       
#-Docs:             문서 수정                                    
#-Comment:          필요한 주석 추가 및 변경                           
#-Style:            코드 포맷팅, 세미콜론 누락, 코드 변경 없이 스타일 관련 기능    
#-Refactor:         코드 리펙토링                                  
#-Test:             테스트 코드 추가, 리펙토링 테스트 코드 추가                
#-Design:           사용자 UI 디자인 변경                            
#-Rename:           파일 혹은 폴더명을 수정하거나 옮기는 작업만 수행한 경우        
#-Remove:           파일을 삭제하는 작업만 수행한 경우                      
#-BREAKING CHANGE:  커다란 API 변경의 경우                           
#-HOTFIX:           급하게 치명적인 버그를 고쳐야하는 경우                    
#-Prevent:          특정 기능을 막음                                
#-Avoid:            특정 현상을 회피함                               
#-Perf:             성능 향상                                    
#-Chore:            빌드 업무 수정, 패키지 매니저 수정(ex .gitignore 수정 등) 
#
#
#본문
#- 본문은 {타입}(적용범위): 메세지 로 표현할 수 없는 상세한 내용을 적는 부분입니다.
#- 72이내로 작성합니다.
#- 선택사항이기 때문에 간단한 내용의 커밋에는 본문을 작성하지 않아도 됩니다.
#- 최대한 상세히 작성합니다. (코드 변경의 이유를 명확히 작성할수록 좋습니다.)
#- 어떻게 변경했는지보다 무엇을, 왜 변경했는지 작성합니다.
#
#
#꼬리말
#- 선택사항 입니다
#- issue tracker ID 명시하고 싶은 경우에 작성합니다.
#- 유형: #이슈 번호 형식으로 작성합니다.
#- 여러 개의 이슈번호는 쉼표(,)로 구분합니다.
#- 이슈 트래커 유형은 다음 중 하나를 사용합니다.  
#    Fixes: 이슈 수정 중 (아직 해결되지 않은 경우)  
#    Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)
#    Resolves: 이슈를 해결했을 때 사용  
#    Ref: 참고할 이슈가 있을 때 사용  
#
#ex1)
#Docs: 문서 수정
#
#프로젝트 README 업데이트
#
#Resolves: #789
#Ref: #54
#
#ex2)
#Fix: 버그 수정
#
#로그인 페이지 오류 수정
#
#Resolves: #456
#Ref: #78

3. Git template 설정 적용

작성한 template를 아래 명령어로 적용합니다.

git config --global commit.template ./template.txt

4. Git template 를 이용한 Git commit message 작성

(X) git commit -m  
(O) git commit  

   옵션에서 -m을 빼고 커맨드를 입력하게 되면 아래와 같이 git commit 메시지를 입력하기 위한 git editor에 설정한 템플릿이 나옵니다.

해당 에디터에 내용을 수정하고 창을 닫으면 커밋이 완료됩니다.

만일 에디터에 내용을 수정하지 않으면 내용이 없기 때문에 commit이 진행되지 않습니다.

원래 template에 있던 내용들은 commit 메시지에 저장이 되지 않기 때문에 따로 삭제하실 필요는 없습니다.

참고하면 좋은 글


   

Leave a Comment

목차