Github Label, Issue, Pull Request Template 적용하기
Published in
4 min readNov 26, 2020
반복되는 Github 초기 세팅
Label 세팅
Github을 사용하다 보면 Label 관리의 필요성을 느낄 때가 있습니다. 특히 팀으로 일하는 경우 동일한 규칙에 맞춰서 Label을 정해서 사용할텐데, 매번 새로운 저장소를 만들 때 마다 세팅을 해줘야 합니다.
Issue, PR Template 세팅
그리고 Issue과 PR(Pull Request)의 경우도 마찬가지입니다. 특히 공개 된 저장소의 경우, 정해진 형식에 맞게 Issue와 PR을 올리는 것이 아니기 때문에 정리가 잘 안되는 경우가 많습니다.
한방에 해결
그래서 이런 문제를 한번에 해결하고 싶어서, Label 세팅과 Issue, PR Template 이 담긴 저장소를 만들어서 Github 저장소 자체를 템플릿으로 사용할 수 있도록 하였습니다.
아래 내용을 바탕으로 세팅 된 Github 저장소 입니다. `Use this template` 버튼으로 바로 이용하셔도 좋고, fork 후 본인에게 맞게 수정한 후 template으로 사용하셔도 좋습니다.
Github Label 세팅
Label 이란?
- Issue, PR 에 붙여서 분류하기 위한 이름표
Github 액세스 토큰 발급
- https://github.com/settings/tokens 접속
- `Generate new token` 클릭
- 원하는 이름 입력
- `scopes`에서 repo 선택
Label 정의하기
- `labels.json` 파일에 JSON Array 형태로 정의
- `name`, `color`, `description` 을 정의할 수 있음
[
{
“name”: “Priority: Critical”,
“color”: “8c001a”,
“description”: “우선순위 긴급”
}
]
정의 된 Label 적용하기
- `액세스 토큰`, `계정명`, `저장소 이름`을 자신의 것으로 변경
npx github-label-sync — access-token [액세스 토큰] — labels labels.json [계정명]/[저장소 이름]
- Label 설정 적용 전
- Label 설정 적용 후
Issue Template
- `Issues` 탭에서 `New issue` 버튼을 눌렀을 때 미리 정의 된 템플릿을 선택할 수 있음
Issue Template 정의하기
- 마크다운 형식으로 파일 생성
- `name`, `about`, `title`, `labels`, `assignees`를 미리 지정할 수 있
- labels 의 경우 위에서 정의 한 label name을 지정하면 됨
예시
---
name: Bug Report Template
about: 버그 리포트 템플릿입니다.
title: ''
labels: 'Status: To Do, Priority: Medium, Type: Bugfix/Function, Type: Bugfix/UI'
assignees: ''
---# 발생 일시# 발생 위치# 증상# 재현 방법# 스크린샷
Issue Template 적용
- 추가 된 파일을 github 원격에 push 한 후 `New issue` 버튼을 누르게 되면 아래와 같이 선택 화면이 나옴
Pull Request Template
- 마크다운 형식으로 파일 생성
- `pull_request_template.md`로 파일 이름 지정
예시
# 반영 브랜치# 변경 사항# 확인 방법 (스크린샷 포함)