Git

PR Template와 Issue Template 설정하기

술단고 2024. 6. 6. 00:40

 

게임을 개발하던, 웹을 개발하던,

Github을 통해 여러 명이서 협업을 하다 보면 당연히 Branch를 많이 쓰게 된다.

 

Branch를 쓰고, 협업 인원이 많으면 많을 수록

당연히 PR과 Issue를 자주 작성하게 되는데,

모든 사람마다 PR과 Issue를 작성하는 법이 다르면 복잡하기도 하고,

아예 일관성있는 서식이 있으면 좋겠다! 해서 생긴 것이 바로 템플릿이다.

 

PR 템플릿이 없는 것과 있는 것

 

위 Before / After 이미지에서 볼 수 있듯이,

PR을 생성하면 알아서 Markdown 문서로 미리 지정한 서식을 작성할 수 있게 된다.

그럼 이 우아한 기능을 어떻게 우리의 리포지토리에 추가할 수 있을까?

 


 

PR 템플릿 추가하기

  1. 우선 리포지토리의 최상위 경로에 .github 라는 이름의 디렉토리를 생성한다.
  2. 이후 해당 디렉토리 내부에 pull_request_template.md 파일을 생성한다.
## Summary
<!-- PR의 주제를 작성하고 기능을 요약해주세요 -->
- 개발한 기능을 요약하고
- 목적을 설명해주세요

## Describe your changes
<!-- 개발한 기능 및 변경 사항에 대해 설명해주세요 -->
- 변경사항에 대한
- 설명을 작성해주세요

## Issue link
<!-- 관련된 이슈 링크를 작성해주세요 -->
- closed #이슈번호

## Additional context
<!-- 추가적인 내용이 있다면 작성해주세요 -->

 

이후 Markdown 문서에 해당 리포지토리에 알맞는 서식을 작성해준다.

나는 일반적으로 위와 같은 템플릿을 작성해 사용한다.

그럼, 이제 완성이다! 별도의 작업을 추가로 하지 않아도, 알아서 Github가 인식해 적용해준다.

 

그럼 이제부터 자동으로 템플릿이 들어간다!

 

 


 

Issue 템플릿 추가하기

PR과 마찬가지로 Issue 역시 미리 템플릿을 추가해 사용할 수 있다.

거기에 더불어, Issue는 여러 가지 목적으로 사용될 수 있기 때문에,

Issue를 작성하는 목적에 따라 별도의 템플릿을 지정하는 것 또한 가능하다!

 

 

  1. 우선 리포지토리의 최상위 경로에 .github 라는 이름의 디렉토리를 생성한다.
  2. 이후 해당 디렉토리에 ISSUE_TEMPLATE 디렉토리를 생성한다.
  3. 이후 해당 디렉토리에 bug-report.mdfeature-request.md 등 원하는 형식의 템플릿을 작성한다.
---
name: Feature request
about: 기능 개발을 위한 템플릿
title: "[FEAT]"
labels: feature
assignees: ''

---

## Description
<!-- 개발하고자 하는 기능에 대해 설명해주세요 -->

## TODO
<!-- 개발을 위해 해야 할 일을 작성해주세요 -->
- [ ]

## Reference
<!-- 참고 자료가 있다면 작성해주세요 -->

## Additional context
<!-- 추가적인 내용이 있다면 작성해주세요 -->

 

Issue 템플릿은 내가 원하는 종류를, 원하는 만큼 만들어도 좋다.

나같은 경우엔 버그 리포트, 기능 개발, 수정, 제안 네 가지 종류의 이슈 템플릿을 만들었다.

위에 올려둔 기능 개발과 같은 템플릿엔 TODO도 적어 개발 도중 체크할 수 있게 만들었다.

 

이제부터 이슈를 작성할 때 원하는 템플릿을 골라 작성을 시작할 수 있다.

 


 

이제부터 우리 팀은 PR과 Issue를 작성할 때, 양식을 골라 일관성있게 문서를 작성할 수 있게 되었다!

PR에서 Issue를 끌어와 Merge 후엔 Issue가 자동으로 Close되는 작업도 할 수 있고,

여러가지 협업에 필요한 작업을 자동화할 수 있기에 굉장히 유용한 기능같다.

 

다음 Git 포스팅엔 Branch 병합에 자주 쓰이는 Merge 명령어들을 준비해보도록 하겠다!