git/git

[Git] git commit template 설정하기

개발자성장기 2023. 4. 24. 20:43
반응형

 

git commit을 신경 쓰지 않고 대충 할때는 전혀 관심이없었는데  어느 순가 git commit의 commit message가 중요하다는 것을 깨달았다. 

 

특히 코드리뷰를 할때 더욱더 그 필요성이 보이게 된다. 

 

2020 우아콘 발표중 일부 내용이다. 

이런식으로 commit 로그를 볼때 가독성이 굉장히 떨어진다. 

이런식으로 규칙을 정하고 그에 맞게 commit을 하면 가독성이 훨씬 좋아진다. 

 

그리고 commit 내용도 함께 작성해주면 더 좋아진다. 

 

[우테콘2022] 우리 팀의 코드리뷰 문화, 이렇게 조금씩 발전했어요 - (3) 코드리뷰 문화, 이렇게 개

이전에는 이렇게 했는데 commit로그를 볼때 가독성이 좋지 않았다. 그래서 화면과 같이 제목을 작성하는 규칙을 만들어 가독성을 높였다고한다. 확실히 이전보다 가독성이 월등히 높아진 것 같다

html-jc.tistory.com

 

 

이러한 commit message를 작성하기 위해서 할 수 있는 노력으로 commit message template을 사용하는 것이다. 

 

 

# <type>: <subject>
##### Subject 50 characters ################# -> |


# Body Message
# 여러 줄의 메시지를 작성할 땐 "-"로 구분 (한 줄은 72자 이내)
######## Body 72 characters ####################################### -> |

# Issue Tracker Number or URL

# --- COMMIT END ---
# Type can be
#   feat    : new feature
#   fix     : bug fix
#   refactor: refactoring production code
#   style   : 코드 의미에 영향을 주지 않는 변경사항 (형식 지정, 세미콜론 누락 등)
#   docs    : 문서의 추가, 수정, 삭제
#   test    : 테스트 추가, 수정, 삭제
#   chore   : 기타 변경사항 (빌드 부분 혹은 패키지 매니저 수정사항)
# ------------------
# Remember me ~
#   제목 첫 글자를 대문자로
#   Use the imperative mood in the subject line
#   제목 끝에 마침표 금지
#   Separate subject from body with a blank line
#   본문은 "어떻게" 보다 "무엇을", "왜" 를 설명한다.
#   Can use multiple lines with "-" for bullet points in body
# ------------------

이런식으로 template을 사용할 수 있다. 

더 다양한 양식이 있으니 "git commit meassage template"라고 검색하면 다양하게 나온다. 

 

 

📚 사용 방법

 

그렇다면 이 template을 어떻게 사용할까? 

 

 

1. .gitmessage.txt 파일 만들기

 

내 로컬 즉 commit 할 때마다 사용해주고 싶다면 "~/"를 앞에 붙여서 파일을 생성해주면 된다. (~/는 루트 디렉토리 라는 의미)

$ touch ~/.gitmessage.txt

이번 프로젝트에서만 사용하고 싶다면 ~/을 빼주고 파일을 생성해주면 된다.

$ touch .gitmessage.txt

 

$ touch : 디렉토리 생성

$ rm : 디렉토리 삭제

 

 

2. git commit template 제작

 

위에서 txt 파일을 만들었으니  

$ vim ~/.gitmessage.txt
또는
$ vim .gitmessage.txt

해당 명령어를 통해 접근해서 저장해주면된다. 

 

필자는 루트 저장소에 만들었기때문에 ~/을 붙이고 접근했다. 

원하는 템플릿을 복사한후 이곳에 붙여넣어주면 된다.

 

복사하기전에 수정해서 넣어도 되고 여기서 복사한 뒤 수정하고 싶으면  "i"를 눌른뒤 수정해주면 된다. 

 

수정이나 붙여넣기가 끝났으면     ":" 를 누르고   "wq"를 입력하면 끝난다. 

 

3. git commit template 시스템 설정하기

 

이제 템플릿 파일도 만들었고 안에 템플릿 형식도 저장했으니 git하고 연결시키면 된다. 

 

$ git config --global commit.template ~/.gitmessage.txt

--global 옵션이 있으면 내 로컬에서 커밋하는 모든 프로젝트에서 동일한 템플릿이 적용되고

없으면 해당하는 특정 프로젝트에서만 템플릿이 적용된다. 

 

위에서 ~/.gitmessage.txt 라고 했다면 --global 옵션을 붙여주면 좋고

~/ 없이 .gitmessage.txt 라고만 했다면 현재 프로젝트에서만 적용되도록 --global 옵션을 제외하면 좋을 것 같다.

 

이제 git commit 을 입력하면 해당 템플릿이 뜬다. 

 

 

 

 


[참고]

 

https://kkangsg.tistory.com/95

 

 

반응형