[Git] 커밋컨벤션

Hyunji·2022년 3월 19일
0

공부

목록 보기
13/35
post-thumbnail

커밋이란?

  • 특정 시점에 작업자의 수정사항이나, 추가사항등을 명시하고 저장하는 것

커밋메세지의 중요성

  • 커밋 메세지를 대충 작성하게 된다면?
    • 누적될수록 가독성이 떨어지게 된다
    • 코드 유지보수에 어려움이 있을 수 있다
  • 협업하는 사람들끼리 커밋메세지 규칙을 정해둔다면?
    • 서로 코드리뷰에 도움이 된다
    • 자신의 이전 로그를 살펴보는 것에도 도움이 된다
  • 좋은 커밋메세지는 같이 일하는 동료 개발자, 미래의 자신에게 변경사항을 전달하는데에 도움이 될 수 있다

커밋메세지

메세지 기본구조

type: subject

body

footer

type

타입은 타이틀 내에 포함되고, 커밋 타입은 아래의 타입들 중 하나로 구성된다

  • feat: 새로운 기능 (A new feature)
  • fix: 버그 수정 (A bug fix)
  • docs: 문서 변경 사항 (Changes to documentation)
  • style: 코드 포맷팅, 세미콜론 ; 누륵 등 코드 변경 없음 ( Formatting, missing semi colons, etc; no code change)
  • refactor: 코드 리팩토링 (Refactoring production code)
  • test: 테스트 추가, 리택토링 테스트 코드 추가 (Adding tests, refactoring test; no production code change)
  • chore: 빌드 작업 업데이트, 패키지 매니저 수정 (Updating build tasks, package manager configs, etc; no production code change)

subject

  • 제목은 50자 이하여야 하며 대문자로 시작하고 마침표로 끝나지 않아야 한다
  • 무엇을 했는지 보다는 명령어로 작성하기

body

  • 선택사항이기 때문에 모든 커밋에 body내용을 작성할 필요는 없다
  • 타이틀 외에 추가적으로 정보를 전달하고 싶을 경우 body에 추가적인 정보를 기입하면 된다
  • body와 마찬가지로 선택사항
  • 보통 이슈를 추적하기 위해 이슈 Id를 넣어주는 용도로 사용

커밋메세지 예시

feat: Summarize changes in around 50 characters or less // type: subject

// body
More detailed explanatory text, if necessary. Wrap it to about 72
characters or so. In some contexts, the first line is treated as the
subject of the commit and the rest of the text as the body. The
blank line separating the summary from the body is critical (unless
you omit the body entirely); various tools like `log`, `shortlog`
and `rebase` can get confused if you run the two together.

Explain the problem that this commit is solving. Focus on why you
are making this change as opposed to how (the code explains that).
Are there side effects or other unintuitive consequences of this
change? Here's the place to explain them.

Further paragraphs come after blank lines.

 - Bullet points are okay, too

 - Typically a hyphen or asterisk is used for the bullet, preceded
   by a single space, with blank lines in between, but conventions
   vary here

If you use an issue tracker, put references to them at the bottom,
like this:

// footer
Resolves: #123
See also: #456, #789

Udacity Git Commit Message Style Guide

profile
성장중인 개발자

0개의 댓글