이번 프로젝트 때 commit message에 관한 지적을 받았다
commit message를 작성할 때는 규칙을 정하여 팀원들과 일관성 있게 작성해야하는데
알면서도 제대로 실천하지 못했다.
commit message는 readme 만큼 중요한데 우리팀은 이번에 둘 다 신경을 쓰지 못했다.
이번 기회에 제대로 알고 다음 프로젝트때는 확실히 사용하자.
유다시티의 commit message 스타일 가이드를 참고해보자
1. commit message 구조
기본적으로 제목, 본문, 꼬리말로 나뉘는데 각 부분을 빈줄로 구분한다.
type : subject
body
footer
2. commit type
태그: 제목 의 형태로, : 뒤에만 space가 들어간다.
타입: 제목
Feat: "로그인 기능 구현"
type 유형
- Feat : 새로운 기능의 추가
- Fix: 버그 수정
- Docs: 문서 수정
- Style: 스타일 관련 기능(코드 포맷팅, 세미콜론 누락, 코드 자체의 변경이 없는 경우)
- Refactor: 코드 리펙토링
- Test: 테스트 코트, 리펙토링 테스트 코드 추가
- Chore: 빌드 업무 수정, 패키지 매니저 수정(ex .gitignore 수정 같은 경우)
3. subject
제목은 최대 50자를 넘지 않도록 하고, 마침표 및 특수기호는 사용하지 않는다.
태그는 영어로 쓰되, 첫 문자만 대문자로 작성하고 과거시제를 사용하지 않는다.
Added(X) --> Add(O)
4. Body
선택사항이기 때문에 모든 커밋에 본문내용을 반드시 작성할 필요는 없다.
설명이 필요할 경우 본문은 한 줄 당 72자 내로 작성하고 양에 구애받지 않고 최대한 상세히 작성한다.
내용은 어떻게가 아니라 무엇을 왜 변경했는지를 작성한다.
5. footer
선택사항이므로 모든 커밋에 꼬리말을 작성할 필요 없다.
꼬리말은 optional이고 이슈 트래커 ID를 작성하며 "유형: #이슈 번호" 형식으로 사용한다.
여러 개의 이슈 번호를 적을 때는 쉼표(,)로 구분한다.
이슈 트래커 유형
- Fixes: 이슈 수정중
- Resolves: 이슈 해결
- Ref: 참고할 이슈
- Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)
유형: #이슈번호
ex) Fixes: #45 Related to: #34, #23
6. 예시
Feat: "회원 가입 기능 구현"
SMS, 이메일 중복확인 API 개발
Resolves: #123
Ref: #456
Related to: #48, #45
fix: CardList 컴포넌트 클릭 시 공백으로 나오는 오류 수정
모바일 버전에서 CardList의 img 부분 클릭 시 공백으로 나오는 오류 수정.
PC버전은 이상없음.
Resolves: #232
유타시티의 commit message 규칙을 알아봤다. 대부분 이러한 규칙으로 작성을한다.
내가 속한 팀에서도 commit 규칙 정해서 다음 프로젝트 때는 잘 실천해보자!
아래 블로그들을 참고했다!
https://doublesprogramming.tistory.com/256
Git - 커밋 메시지 컨벤션
02_commit_message_rule.md Git - Commit Message Convention 커밋 메시지를 작성할 때는 원칙을 정하고 일관성 있게 작성해야 한다. 아래는 유다시티의 커밋 메시지 스타일 가이드를 참조한 내용이다. 1. Commit..
doublesprogramming.tistory.com
Git | git 커밋 컨벤션 설정하기
개발자로 시작한지 얼마 안되고 나서, 첫 직장은 지금도 다니고 있는 모든것을 처음부터 새로 시작하는 스타트업이다.프론트엔드는 작성자 혼자 뿐이었고, 아무것도 모르는 주니어 개발자가 하
velog.io
https://meetup.toast.com/posts/106
좋은 git 커밋 메시지를 작성하기 위한 7가지 약속 : NHN Cloud Meetup
git커밋
meetup.toast.com
'Git' 카테고리의 다른 글
git (0) | 2022.11.20 |
---|---|
README.md (0) | 2022.10.07 |
fork, clone (0) | 2022.09.29 |
github pull/push, branch/merge (0) | 2022.09.28 |
git (0) | 2022.09.26 |
댓글