GitHub에서 Issue와 Pull Request를 작성하다 보면 매번 내용을 새로 작성해야 해서 생각보다 번거로운 경우가 많습니다.
특히 협업을 할 때는 사람마다 Issue나 PR을 작성하는 방식이 달라서, 어떤 Issue에는 작업 내용이 빠져 있고 어떤 PR에는 리뷰어가 확인해야 할 내용이 부족한 상황이 생기기도 합니다.
물론 팀에서 미리 형식을 정해둘 수도 있지만, 매번 직접 작성하다 보면 실수로 특정 항목을 빼먹는 경우가 생길 수 있습니다.
그래서 이번에는 GitHub에서 Issue와 PR 템플릿을 만들어, 협업 시 작성 형식을 조금 더 일관성 있게 관리하는 방법을 정리해보려고 합니다.
템플릿을 미리 만들어두면 Issue나 PR을 생성할 때 정해진 양식이 자동으로 표시되기 때문에, 작성 시간을 줄이고 협업 과정에서도 필요한 정보를 빠뜨리지 않도록 도와줄 수 있습니다.
Issue 템플릿 생성하기
먼저 프로젝트 루트 경로에 .github 폴더를 만들고, 그 안에 ISSUE_TEMPLATE 폴더를 생성합니다.
구조는 다음과 같습니다.

이후 issue-template.md 파일 안에 원하는 Issue 템플릿을 작성하면 됩니다.
---
name: "\bIssue 생성 템플릿"
about: 이슈 생성을 위한 템플릿입니다.
title: ''
labels: ''
assignees: ''
---
## 어떤 기능인가요?
> 추가하려는 기능에 대해 간결하게 설명해주세요
## 📝 작업 상세 내용
- [ ] 구현 내용
- [ ]
- [ ]
## 📁 참고 자료 (선택)
위와 같이 작성해두면 새로운 Issue를 생성할 때 해당 템플릿을 선택해서 사용할 수 있습니다.
이를 통해 기능 설명, 작업 상세 내용, 참고 자료 등을 일정한 형식으로 작성할 수 있어 협업 과정에서 Issue 관리가 훨씬 쉬워집니다.
PR 템플릿
Pull Request 템플릿도 비슷한 방식으로 만들 수 있습니다.
프로젝트 루트 경로에 .github 폴더를 만들고, 그 안에 pull_request_template.md 파일을 생성합니다.
구조는 다음과 같습니다.

이후 pull_request_template.md 파일 안에 원하는 PR 템플릿을 작성하면 됩니다.
## #️⃣연관된 이슈
> ex) #이슈번호, #이슈번호
## 📝작업 내용
> 이번 PR에서 작업한 내용을 간략히 설명해주세요(이미지 첨부 가능)
### 스크린샷 (선택)
## 💬리뷰 요구사항(선택)
> 리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요
>
> ex) 메서드 XXX의 이름을 더 잘 짓고 싶은데 혹시 좋은 명칭이 있을까요?
PR 템플릿을 만들어두면 Pull Request를 생성할 때 본문에 위 양식이 자동으로 들어갑니다.
덕분에 작업 내용, 관련 Issue, 리뷰 요청 사항 등을 빠뜨리지 않고 작성할 수 있으며, 리뷰어 입장에서도 변경 사항을 더 쉽게 파악할 수 있습니다.
이슈 올리기



마무리
Issue와 PR 템플릿은 설정 자체는 간단하지만, 협업할 때는 꽤 큰 도움이 됩니다.
매번 같은 내용을 반복해서 작성하지 않아도 되고, 팀원마다 다른 방식으로 작성하던 Issue와 PR을 일정한 형식으로 맞출 수 있기 때문입니다.
작은 설정이지만 협업의 흐름을 깔끔하게 만들어주는 기능이기 때문에, 팀 프로젝트를 진행한다면 초기에 설정해두는 것을 추천합니다.
