[Eng] Git _ Commit Convention, Commit Message

Chaewon Yoon (Jamie)·2023년 4월 25일
2

commit message convention

대부분의 commit message는 title만 작성함


Conventional Commit의 구조

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

ex) fix: remove deprecated features
ex) docs(readme): update build instructions


<type> category

  • feat 코드에 새로운 기능(feature) 추가

  • fix 버그 수정

  • BREAKING CHANGE(대문자 표기) 이전 버전과 호환되지 않는 변경 내역으로 대문자 or !로 표시할 수 있음 (ex: feat!)

  • docs 개발 문서 변경

  • style 들여쓰기, 따옴표, 세미콜론 등 코드 형식 및 스타일 변경

  • ci CI/CD(Continuous integration and Deployment) 관련 코드 변경

  • refactor 중복된 코드 제거, 변수명 변경, 코드 단순화 등 리팩터링 관련

  • test 테스트 관련 코드 변경

  • build 빌드 시스템 관련 코드 변경

  • perf 성능 개선 관련 코드 변경

  • chore 기타 코드 변경


Commit Message

  1. commit message는 동사원형으로 시작(명령적 어조를 위함 imperative mood)

-- but 3인칭 단수나 과거형을 사용하는 경우도 있음

  1. conventional commits로 작성하면 모두 소문자로 / 일반적인 경우에는 첫 글자만 대문자로 표기
    ex) docs: add Versio to tools list
    ex) Update build.md with detailed instructions

  2. a, an, the 관사(article) 최소화
    ex) Add a ref to the Offscreen component => Add ref to Offscreen component
    ex) Fix a typo in the header => Fix typo in header

  3. 마침표 punctuation mark 생략
    (물음표나 느낌표도 꼭 필요한 경우 아니면 사용 X)

  4. title에는 코드 변경 내용만 간략하게 작성
    필요한 경우, 코드 변경 사유와 상세 설명 같은 부가적인 내용은 본문body에 작성


  • Fix 수정하다
  • Improve 개선하다
  • Handle 처리하다
  • Optimize 최적화하다
  • Update 업데이트하다
  • Implement 구현하다, 적용하다
  • Refactor 리팩터링하다
  • Add 추가하다
  • Revert 되돌리다
  • Change 변경하다
  • Replace 대체하다
  • Merge 병합하다
  • Document 문서를 작성하다
  • Bump 버전을 올리다
  • Simplify 단순화하다
  • Enable 가능하게 하다
  • Run 실행하다
  • Clean 제거하다, 정리하다
  • Wrap 감싸다, 그룹화하다
  • Deploy 배포하다
  • Modify 변경하다
  • Remove 제거하다
  • Rename 이름을 바꾸다
  • Move 이동하다, 이동시키다

ex)
Enable logging temporarily
Fix bugs with infinite loading
Update translation



Git 주요 실무 영어

  • Squash the last 3 commits 최근 3개의 커밋을 합치다
  • Push commits to a repository
  • Merge a feature branch into the base branch
  • Revert a pull request
  • Request a review
  • Comment on a pull request
  • Resolve a merge conflict
  • Rebase onto another branch 다른 브랜치로 리베이스하다
  • Clone a repository
  • Close a pull request without merging it into the branch

Quiz

  1. 유저의 폼 제출을 막는 버그 수정
    Fix bug preventing submitting user's form
    => Fix bug preventing users from submitting form

  2. 비동기 호출을 도입하여 로딩 성능 개선
    Improve lazy loading
    => Improve loading performance by implementing asynchronous call

  3. README에 .env 예시 추가
    Add env file to README
    => Add .env example to README

  4. MAX_PURCHASE_LIMIT 전역 상수값 변경
    refactor: change global constant of MAX_PURCHASE_LIMIT
    => Modify MAX_PURCHASE_LIMIT global constant value

    !! change는 전체 변경, modify는 일부 변경
    여기서는 프로젝트 전체가 변경된 것이 아니므로 modify가 적합
profile
keep growing as a web developer!🧃

0개의 댓글