본문 바로가기
320x100
320x100

Git conventional commits with issue number

Git Commit메시지 작성시에는 Convention을 정해놓고 지켰었다

구글에 git conventional commit라고 검색을 해보면 

구글 검색

 

 

나오는 몇개의 Top 링크 결과물이다

1. https://www.conventionalcommits.org/en/v1.0.0/

 

Conventional Commits

A specification for adding human and machine readable meaning to commit messages

www.conventionalcommits.org

 

2. https://gist.github.com/qoomon/5dfcdf8eec66a051ecd85625518cfd13

 

Conventional Commits Cheatsheet

Conventional Commits Cheatsheet. GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

Star 수가 1900개가 넘는다

독일

독일 개발자이신듯 하다

 

3. https://kapeli.com/cheat_sheets/Conventional_Commits.docset/Contents/Resources/Documents/index

 

Conventional Commits Cheat Sheet - Kapeli

The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119. Commits MUST be prefix

kapeli.com

3번 사이트는 이미지로 한 눈에 보기 좋게 정리되어 있었다(그래도 2번 링크가 더 맞아보인다)

 

기타 한국 블로그에서 돌아다니는 글들은 거의 위의 사이트들을 번역한거라고 생각하면 된다

이러나 저러나 내가 제일 많이 썼던 건 feat, refactor, fix, test, chore, docs, ops 요정도였다

추가로 Git Issue Tracking을 알고 있다면, 커밋 메시지에 이미 만들어진 이슈 번호를 부여한 사람도 있을 것이다

예시)

  • #2 feat: add email notifications on new direct msg
  • fix: add missing parameter(#3)

예시

실제로 해보면........ㅎ

1. 이슈를 먼저 만들고

2. 태그번호 and 커밋 메시지와 함께 push한다

3. Github에서 보면

이렇게 나오고.. 2 Commits라는 곳을 눌러 히스토리를 보면

이처럼 나온다. 그럼 저 #1버튼을 눌러보면.....?

해당 이슈로 가면서, 이슈에 대한 히스토리를 볼 수 있다

아마 웬만한 회사들이라면 이정도는 적용하고 있을것이다!

이렇게 해야하는 이유는 커밋은 시간이 지날수록 쌓이기때문에 관련 기능들이 타임라인에 뭉쳐있지 않게 되기 때문이다

혹시라도 회사에서 이렇게 하고 있지 않다면 도입해보자

 

이슈 템플릿

추가로 이슈 템플릿도 만들 수 있는데

Git Repository/Settings/General의 Features에서 Issues 체크에서 Set up templates를 클릭한다

기능 요청 이슈 템플릿을 수정했다. 추가로 feat라는 label도 달아줬다

## 어떤 기능인가요?

> 추가하려는 기능에 대해 간결하게 설명해주세요

## 작업 상세 내용

- [ ] TODO
- [ ] TODO
- [ ] TODO

## 참고할만한 자료(선택)

그럼 앞으로 새로운 이슈를 만들 때 이슈 템플릿을 선택하게 된다

 

결과

 

비슷하게 버그 리포트 이슈도 수정해보았다

## 어떤 버그인가요?

> 어떤 버그인지 간결하게 설명해주세요

## 어떤 상황에서 발생한 버그인가요?

> (가능하면) Given-When-Then 형식으로 서술해주세요

## 예상 결과

> 예상했던 정상적인 결과가 어떤 것이었는지 설명해주세요

## 참고할만한 자료(선택)

 

PR(Pull Request) 템플릿

마지막으로 PR(Pull Request) Template도 만들 수 있다

default branch(main/master)의 프로젝트 root 경로에서 4가지 방법중 하나를 선택하면 된다

  • root directory 아래/pull_request_template.md
  • docs/pull_request_template.md
  • .github/pull_request_template.md
  • .github/PULL_REQUEST_TEMPLATE/pull_request_template.md

나는 3번 .github/pull_request_template.md 파일을 만들고 템플릿을 입력했다

파일명은 대소문자 상관없다: pull_request_template.md or PULL_REQUEST_TEMPLATE.md

## #️⃣연관된 이슈

> ex) #이슈번호, #이슈번호

## 📝작업 내용

> 이번 PR에서 작업한 내용을 간략히 설명해주세요(이미지 첨부 가능)

### 스크린샷 (선택)

## 💬리뷰 요구사항(선택)

> 리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요
>
> ex) 메서드 XXX의 이름을 더 잘 짓고 싶은데 혹시 좋은 명칭이 있을까요?

 

결과

 

프로젝트 Tree

최종 프로젝트의 모양새는 이렇게 됐다(이슈템플릿 2개, PR템플릿 1개)

 

 

출처

https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository

 

Creating a pull request template for your repository - GitHub Docs

When you add a pull request template to your repository, project contributors will automatically see the template's contents in the pull request body.

docs.github.com

 

https://amaran-th.github.io/Github/[Github]%20Issue%20&%20PR%20Template%20%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0/

 

[Github] Issue & PR Template 설정하기

Github의 이슈, PR의 템플릿을 설정하는 방법에 대해 알아보자.

amaran-th.github.io

 

'VCS > Github' 카테고리의 다른 글

협업을 위한 - Gitmoji 도입해보기  (2) 2024.07.25
Github repository 이쁘게 그룹화하기  (0) 2023.11.21
깃허브 앱 아이콘 모양 바꾸기  (0) 2022.08.10

댓글