6/20 TIL - Git commit template, Git pull request template, Git issue template

·2024년 6월 21일

새 팀플을 시작했다.
이번에도 팀장을 맡게 되었다.

다른 조의 팀장들과 얘기를 나누다가 git issue template, pull request template, commit template에 대해 알게 되었고, 이번 팀플에 적용해보기로 하였다.

1. commit template

file -> settings -> plugin -> git commit message helper 설치하기

설치 한 이후 재시작

file -> settings -> 검색창에 commit template

#if($type)${type}#end#if($scope)(${scope})#end: #if($subject)${subject}#end
#if($body)${newline}${newline}
${body} ${newline}
내용 추가할 거 적어주세요${newline}
${newline}
(커밋 주요 사항 요약)
${newline}
${newline}
ADD${newline}
    - (추가사항1)${newline}
    - (추가사항2)
 
#end
#if($changes)${newline}${newline}BREAKING CHANGE(중요한 변경 사항): ${changes}${newline}#end
#if($closes)${newline}${closes}  Closes #0  (닫을 이슈 번호)
#end
#if($skipCi)${newline}${newline}${skipCi}#end

편한대로 수정 한 후, 아래 preview 창에서 어떻게 적용될 지 미리 볼 수 있다.

IntelliJ에서 commit 할 때,

이 중간의 흰색 아이콘을 클릭하면

이런 창이 나오고, type of change를 지정한 후 아무 내용을 입력한다.

이렇게 commit template이 적용된 것을 볼 수 있다.

commit template을 협업에서 사용하면서, commit 형식의 일관성을 유지하며 필수적인 내용이 빠지지 않게 할 수 있었다.

2. pull request template

이번에 원활한 협업을 위해 git organization을 사용하기로 하였다.
git pull request를 잘 사용해보자는게 이번 팀 목표중 하나였는데, 그에 많은 도움이 될 수 있을 것 같아 template을 만들어 적용해보기로 하였다.

repo에 .github(폴더이름은 상관없다)로 폴더를 만들고, 하위에
'pull_request_template.md'라는 이름으로 파일을 만든다.

우리 팀에서 사용하기로 한 코드 컨벤션(git flow)를 모든 팀원이 쉽게 확인할 수 있게끔 위에 label 목록을 적어주었고, 제목, 작업내용, 기타 수정사항, 앞으로의 과제에 대해 상세히 서술할 수 있게끔 만들었다.

- `feat` : 새로운 기능 추가
- `fix` : 버그 수정
- `docs` : 문서 수정
- `style` : 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우
- `refactor` : 코드 리펙토링
- `test` : 테스트 코드, 리펙토링 테스트 코드 추가
- `chore` : 빌드 업무 수정, 패키지 매니저 수정
- `rename` : 파일명, 폴더명 수정 또는 이동
- `remove` : 파일 삭제
(전부 작성 후 위 내용은 지워주세요)

<br/>

## 🔎  제목 : (위 키워드 중 맞는 것) / + #(issue 번호) + 기능명  

  ex) feat/#17 - pull request template 작성
  (확인 후 지워주세요)
  
<br/>

## 🔎 작업 내용

- 기능에서 어떤 부분이 구현되었는지 설명해주세요(주석단 코드를 캡쳐해서 붙여주셔도 무방합니다)

<br/>

## 🔎  기타 수정 사항

- 기타 수정 사항을 작성해주세요.

<br/>

## 🔎   앞으로의 과제

- 내일 할 일을 적어주세요


  <br/>

위와 같이 작성하였다.

pull request의 일관성을 확보할 수 있어 좋았고, 풀리퀘를 할 때 코드리뷰도 같이 진행해야하는데, 거기에 필수적인 정보들을 같이 적게끔 하여 좀 더 원활한 코드 리뷰 및 피드백이 가능하였다.



위와 같이 코드에 대해 궁금한 점이 있을 때 바로바로 대답을 해드릴 수 있었다.

또한 수정할 부분이나 에러가 있을 때, 댓글을 통해 빠르게 피드백할 부분을 확인하고, 코드의 의도 등과 같은 궁금한 부분들에 대해 빠르게 확인하고 의견을 주고 받을 수 있었다.

3. git issue template

git repository setting에 들어가서, 아래로 조금 내려보면

이와 같은 화면이 나온다. Set up templates를 눌러주면

이게 나오는데,

기본적인 bug, feature에 대한 템플릿이 있고, 직접 커스텀할 수 있는 템플릿도 있었다.

직접 템플릿을 작성해보고 적용해보는 것이 목표였기 때문에, custom template을 적용해보기로 하였다.

commit changes 누르면


이렇게 템플릿 파일이 생성되었다

New issue를 만들면,

이렇게 템플릿이 자동적으로 적용된 것을 볼 수 있다.


캠프에 참여하며 다른 분들과 협업을 자주 하게 되었는데, 협업에 좋은 도구들을 많이 알아가고, 실제로 사용해 볼 수 있어서 아주 유익하다고 느꼈다. 앞으로도 많은 협업을 하고 팀장을 맡을 일도 종종 있을텐데, 그때마다 새로운 협업 툴을 찾고 적용해나가며 성공적인 협업을 할 수 있는 개발자가 되도록 노력해야겠다.

profile
응애개발자

0개의 댓글