들어가며
매번 프로젝트를 시작하면, 해야하는 기초 작업들이 있다.. 귀찮은 작업에는 'Github Label 커스텀 등록하기' 가 있다. 여러 개의 리파지토리에 일일이 label을 설정하는 것은 너무 비효율적이다. 이번 포스트에서는 이를 한 번에 자동화하는 방법에 대해서 알아보자.
준비물
1) Node.js & npm 이 필요하다
각자 알맞게 설치하면 된다 !
2) Github Personal Access Token (PAT)
1. 본인 깃허브 계정의 Settings 메뉴 클릭
2. 왼쪽 사이드바 마지막 메뉴에 있는 Developer Settings 클릭
3. 왼쪽 사이드바에 Personal access tokens 토클 메뉴에서 원하는 생성 방식 클릭
- 이름은 원하는 대로 지으면 된다.
- 최소한 `repo` 권한이 필요하다.
- 나는 classic으로 발급했고, 생성 기간은 무제한으로 했다.
- 생성된 코드는 메모장에 복붙 해놓자 !! 생성 당시에만 확인이 가능하다

3) 라벨 정의 파일 (label.json)
나는 다음과 같이 정의해주었다. 이 json 파일은 데스크탑 위치에 저장했다. 아래 참고에 첫 번째 티스토리의 양식을 사용하였다 !
[
{
"name": "👾 Bug",
"color": "e99695",
"description": "버그 관련"
},
{
"name": "🌎 Deploy",
"color": "c5def5",
"description": "배포"
},
{
"name": "🎨 Design",
"color": "efeeb3",
"description": "마크업 및 스타일링"
},
{
"name": "📑 Docs",
"color": "bfdadd",
"description": "문서 작성 및 수정"
},
{
"name": "✨ Feature",
"color": "e2caf4",
"description": "기능 구현"
},
{
"name": "🛠️ Refactor",
"color": "c2e0c6",
"description": "코드 리팩토링"
},
{
"name": "⚙️ Setting",
"color": "e2e2e2",
"description": "개발 환경 세팅"
}
]
한 개의 리파지토리에 적용하는 경우
명령을 실행하기 위해 터미널을 연다. 그리고 `label.json` 이 있는 위치로 이동한다.
cd ~/Downloads # 예시
그리고 다음과 같은 명령어를 실행해주면 된다.
npx github-label-sync --access-token <YOUR_TOKEN> --labels ./label.json 사용자명/리포지토리명
# 예시
nps github-label-sync --access-token abcdefg --labels ./label.json erika0915/depoly-practice

다음과 같이 나오면 성공된 것이다.

그리고 해당 리파지토리에 가보면, 라벨이 잘 생성된 것을 볼 수 있다.
Organization 내 여러 리파지토리에 한 번에 적용하는 경우
1) repositories_name.txt 라는 파일을 만든다.
나는 터미널에서 그냥 명령어를 통해서 생성했다. 이 역시 label.json과 같은 경로에서 생성해주면 된다.
nano repositories_name.txt
다음과 같이 명령어를 작성하고, 안에 label을 적용할 리파지토리들을 작성하였다.

2) label-all.sh 스크립트 작성
이번에도 터미널에서 아래 명령어를 통해 스크립트를 작성했다.
nano label-all.sh
아래에 자기의 Organization 이름과 토큰을 잘 넣어주면 된다.
#!/bin/bash
for repo in $(cat ./repositories_name.txt)
do
npx github-label-sync --access-token <YOUR_TOKEN> \
--labels ./label.json <ORG_NAME>/$repo
echo "$repo label create completed!"
done
그리고 실행 권한을 부여해줘야한다.
chmod +x label-all.sh
3) 실행
실행하면, `repositories_name.txt`에 적힌 모든 리파지토리에 라벨이 적용된다.
./label-all.sh
참고
[GitHub] GitHub Labels 커스텀 한 번에 등록하기(설정 환경 : mac)
🤔 프로젝트 진행 시 빠지지 않는 Issue/PR의 Labels..! 종류도 많아서 매번 하나씩 등록하는 건 너무 번거롭다는 생각이 들었다. 분명히 편하게 등록할 수 있는 방법이 있을 거라는 생각이 들어 찾
dev-thinking.tistory.com
github issue label 모든 repository에 한번에 적용하기
회사에서 ci 작업을 진행하던 중 issue label을 적용시켜야 하는 상황이 생겨서 label을 적용하는 스크립트와 내용을 공유하고자 한다. github 조직에서 관리자 권한은 issue label 을 한 번에 적용시킬 수
keepbang.tistory.com
'Tech' 카테고리의 다른 글
| [Github] CodeRabbit을 활용한 PR 코드 리뷰 (2) | 2025.08.05 |
|---|---|
| [Github] 깃허브 이슈, PR 템플릿 등록하기 (6) | 2025.08.03 |
| [Jira] Husky로 Jira 커밋 메시지 작성하기 (0) | 2025.07.25 |
| [Git] Spotless + Pre-Commit로 Git Hooks 활용하기 (0) | 2025.07.21 |
| [Jira] 지라 첫 사용기 (4) | 2025.07.21 |
