Github 컨벤션

권태형·2023년 2월 24일
0

git

목록 보기
2/3
post-thumbnail

Github 컨벤션이란?

처음 협업을 위해서 Github를 사용하게 되면 각자의 스타일에 맞춰 commit 메시지를 작성하게 된다.

물론 본인이 담당하지 않은 파트의 코드를 수정하거나 commit할 일은 거의 없겠지만, 전체적인 github에 올라온 commit메시지를 보면 너무 각자 개성넘치게 작성하는 경우가 종종 존재한다.

커밋메시지에 '완료', '최종', '최최종', '히히' 등등 코드를 수정하거나 새로 올렸음에도 불구하고 전혀 관련없은 메시지를 적는 경우도 일상 다반사이다.

이럴때에 github에서 pull을 땡겨오고 나서 에러가 발생하였을 때 어느부분의 수정에서 에러가 발생했는지 알아보기 힘들고 github를 보았을 때에 미관을 해치고, 가독성이 떨어지며, 직관적이지 못해 일일이 하나씩 찾아들어가는 사용자 리소스가 계속하여 소모된다.

이런부분을 방지하기 위해서 협업을 진행할 때에 guthub이용시 일정한 규칙을 두고 같이 일하는 사람들이 서로서로 알아보기 쉽게 작성하기 위한 컨벤션이 존재한다.

물론 이 컨벤션은 고정적인 것이 아니며, 그 팀에서 서로 알아보기 위해서 작성하는 것임으로 임의적으로 규칙을 정할 수 있지만, 대중적으로 많이 사용되고있는 컨벤션이 존재하며, 이에 익숙해져 있는 개발자가 많이 있으므로 되도록이면 대중적인 컨벤션을 적용하도록 노력하자.

대중적으로 사용되는 커밋 컨벤션

VSCode에서 commit메시지를 작성하면 50자 이내의 대표 메시지를 작성하게 된다. 이 대표메시지가 github에 연동된 레포지토리의 해당 브랜치에 그대로 작성되기 때문에 수정하는 일이 없도록 한번쓸 때 잘 작성하면 일을 처리하는데 있어 리소스를 줄일 수 있다.

대표적으로 commit메시지를 작성할 때에 type/subject 식으로 작성한다.

대표적인 Type

feat : 새로운 기능 추가
fix : 버그 수정
docs : 문서 수정
style : 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우
refactor : 코드 리펙토링
test : 테스트 코드, 리펙토링 테스트 코드 추가
chore : 빌드 업무 수정, 패키지 매니저 수정

필자는 위의 7가지 Type만 사용하였는데, 이 외에도 팀이나 회사에 따라 컨벤션의 기준이 달라지기 때문에 그때그때 맞게 작성하는 걸 생각하자

Subject 작성시 주의점

Type을 쓰면 이뒤에 : 이나, / 를 이용해 구분을 주고 한칸 띄운 뒤 Subject를 작성하게 된다. 앞의 Type과 구분문자 스페이스를 제외한 나머지 44~40글자 정도 작성할 수 있는데, 이 Subject를 작성할 때에도 어느정도 작성방향이 정해져 있다.

  1. 제목은 최대 50글자가 넘지 않도록 하고 마침표 및 특수기호는 사용하지 않는다.
  2. 영문으로 표기하는 경우 동사(원형)를 가장 앞에 두고 첫 글자는 대문자로 표기한다.(과거 시제를 사용하지 않는다.)
  3. 제목은 개조식 구문으로 작성한다. --> 완전한 서술형 문장이 아니라, 간결하고 요점적인 서술을 의미.

보통은 위의 사항을 따라서 작성하지만, Type과 마찬가지로 팀이나 회사에 따라 영어가 아닌 한글로 직관적이게 작성하는 경우도 존재하며, 각 상황에 맞춰 작성하도록하자.

이 외에 커밋을 작성할 때에 body와 footer를 작성할 수 있고 이에 대한 컨벤션도 존재하지만, 본인은 아직까지 작성해본 적이 없기 때문에 좀 더 알게되면 추가적인 설명을 적어야 될 것 같다.

profile
22년 12월 개발을 시작한 신입 개발자 ‘권태형’입니다. 포스팅 하나하나 내가 다시보기 위해 쓰는 것이지만, 다른 분들에게도 도움이 되었으면 좋겠습니다. 💯컬러폰트가 잘 안보이실 경우 🌙다크모드를 이용해주세요.😀 지적과 참견은 언제나 환영합니다. 많은 댓글 부탁드립니다.

0개의 댓글