오늘은 커밋 메세지 작성에 대해서 정리해 보도록 하겠습니다.

 

1.  일관된 커밋 메세지 작성 이유

작성시 나름대로의 컨벤션을 정해놓거나, 템플릿을 만들어 작성하면 도움이 많이 됩니다.

작성시마다, 그 때의 상황이나 기분에 따라서 작성글이나 형식이 많이 달라진다면,

그 만큼 그 글을 읽고 이해하는데 어려움이 발생할 수 있습니다.

 

예를 들면, 제목에 

 

2. 커밋 메세지 작성 팁

커밋메세지는 간결하고 일관되어서 쉽게 다른 개발자가 보고 이해하도록 하는 것이 중요한데요.

다음과 규칙들을 이용하면 커밋 메세지 작성에 도움이 될 수 있습니다.

 

2-1. 명령문으로 문장을 작성

아래와 같이 주어를 제외하고, 

영어의 명령문 형식으로 무엇을 했는지를 먼저 동사의 원형으로 작성해주고,

그 다음에 내용을 적어주는 것 입니다.

 

Fix typo in Readme.md

 

2-2. 작은 문법들도 생략 가능

원래 영어는 명사의 개수나 관사에 대해 굉장히 까다로운 편인데요.
간결성을 요하는 커밋타이틀에는 그것이 적용하지 않아도 무방합니다.
굳이 the나 a를 붙이지 않는 경우가 많은 것 이지요.

그래도, 단수 복수까지는 지키는 경우가 많습니다.

 

 

2-5. 마침표는 생략

커밋 작성시 문장 끝에 굳이 마침표를 적어줄 필요는 없습니다.

 

 

3. 커밋 작성예

백문이 불여일견이라고, 실제 커밋 작성 예를 보면 도움이 될 수 있습니다.

Square사의 Retrofit 이나 Realm, Glide, Hilt 등의 Github사이트에서 볼 수 있는 작성사례를 참고하였습니다.

정답은 아니겠지만, 컨벤셔널하게 쓰는 타입을 앞에쓰고 간단하게 설명하는 제목을 쓰는 방법자체는 동일합니다.

 

  • Fix
    • Fix typo in README.md
    • Fix broken link for OkHttp
    • Fix lint issue
    • Fix missing body in raw response for error
    • Fix failing build
  • Update 
    • Update proguard rule
    • Update Android Gradle Plugin to 4.2.0
    • update to Java 8
    • Update Readme.md
    • Update dependencies
  • Upgrade
    • Upgrade to the latest checkstyle
    • Upgrade to Coroutines 1.4.0
  • Use
    • Use https for the apache license
    • Use object.requireNonNull insead of custom helper
    • Use array for needs
    • Use full wildcards
  • Remove
    • Remove Unnecessary optional 
    • Remove old buildscript
    • Remove superfluous remember
  • Drop
    • drop google repository
  • Delete
    • Delete the no longer necessary Binding Class
  • Add
    • Add flag to disable root validation
    • Add validation so an eror
    • Add tests for timeout
    • Add Docker to Dependeabot
    • Add x.json file to web server
  • Switch
    • Switch to OpenJDK
  • Move
    • Move dependencies to file sharable with fixtures
  •  Migrate
    • Migrate to Maven Central
  • Merge
    • Merge branch 'master' into releases
  • Set up
    • Set up basic build and repo structure
  • Restructure
    • Restructure project to a  ensted build

 

 

 

 

 

 

 

728x90

+ Recent posts