Commit Convention

눈큰왕눈이·2022년 11월 4일
0
post-thumbnail

https://www.conventionalcommits.org/en/v1.0.0/
이 포스트는 위 링크를 보고 작성되었습니다.

왜 커밋 컨벤션이 필요한가?

우리는 하나의 프로젝트를 진행하며 수많은 커밋을 작성하게된다.
해당 커밋들을 통해 우리는 우리의 코드에 대해 간략하고 핵심적인 정보를 제공해야한다.
그를 위해 커밋에도 일정한 규칙을 만들게 되었고 그에대해 알아보자.

Conventional Commits

<type> [optional scope]: <description>
[optional body]
[optional footer(s)]

대표적인 타입들은 아래와 같다.

  1. fix : 기능을 수정하거나, 버그를 수정했을때 사용한다.
    fix: add exception when div by zero
  2. feat : 새로운 기능을 추가했을때 사용한다.
    feat: send email to customer when login failed 3 times
  3. BREAKING CHANGE : 중요한 변경사항이 있을떄 푸터에 사용한다.
    혹은 !를 type뒤에 붙여서 표현한다.
    feat!: adding mfa for purchase system
  4. fix 혹은 feat 뒤에 간단한 괄호를 통해 추가적인 정보를 전달가능하다.
    feat(api)!  send an email to the customer when a product is shipped
  5. types에 꼭 fix, feat만 들어가지는 않는다. Angular Convention에서는 다음과 같은 type도 추천한다.
    build:, chore:, ci:, docs:, style:, refactor:, perf:, test: 등등이 존재함.

여러가지 예시들

feat: allow provided config object to extend other configs
BREAKING CHANGE: 'extends' key in config file is now user for extending other config files

!를 활용한 커밋메세지

feat!: send and email to the customer when a product is shipped

!와 commit message scope 사용.

feat(api)!: auth with token is Necessary for now
profile
함께 하고 싶은사람.

0개의 댓글