TokyoAJ

도쿄아재

MEMO 2025.05.24

GitHub 이슈에 자동 번호 매기기 및 [www] 접두사 붙이기

프로젝트를 관리하다 보면 “이슈 #1”, “이슈 #2”처럼 순차적인 번호를 붙여 보고 싶을 때가 있습니다.

GitHub의 기본 이슈 번호는 저장소 전체에서 글로번하게 증가하기 때문에, 프로젝트별·카테고리별 맞춤 카운터를 붙이기는 쉽지 않습니다.

하지만 GitHub Actions를 활용하면, 새 이슈가 열릴 때마다 자동으로 원하는 형식 ([www][#1], [www][#2]…)으로 제목을 변경할 수 있습니다.


왜 자동 번호 매기기를 사용할까?

프로젝트 가시성 향상: 각 이슈에 고유한 번호를 붙이면 토론 중 특정 이슈를 언급할 때 식별이 편리합니다.

카테고리 구분: [frontend][#3], [backend][#4] 등으로 영역별 번호 체계를 만들 수 있습니다.

일관성 유지: 사람마다 붙이는 접두어 형태가 달라지는 것을 방지하고, 항상 동일한 포맷을 강제합니다.


준비 사항

  1. GitHub 저장소가 있어야 합니다.
  2. GITHUB_TOKEN(자동 제공)을 사용할 수 있어야 합니다.
  3. .github/workflows/ 디렉터리에 워크플로우 파일을 추가할 권한이 필요합니다.


1단계: 워크플로우 디렉터리 생성

저장소 루트에 .github/workflows/ 폴더가 없다면 만듭니다.

git clone git@github.com:USERNAME/REPO.git
cd REPO
mkdir -p .github/workflows


2단계: 워크플로우 파일 작성

.github/workflows/auto-number-issues.yml 파일을 생성하고, 아래 내용을 복사해 붙여 넣으세요.

name: 이슈 자동 번호 매기기

on:
issues:
types: [opened] # 새 이슈가 열릴 때 실행

jobs:
add-issue-number:
runs-on: ubuntu-latest

steps:
# 1) 리포지토리 체크아웃
- name: Checkout repository
uses: actions/checkout@v3

# 2) 순번 생성 액션
- name: 순번 생성
id: seq
uses: einaregilsson/build-number@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}

# 3) 이슈 제목 업데이트
- name: 이슈 제목 갱신
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const issue_number = context.issue.number;
const seq = parseInt(process.env.BUILD_NUMBER, 10);
const originalTitle = context.payload.issue.title;
// [www]와 순번을 결합하여 새 제목 생성
const newTitle = `[www][#${seq}] ${originalTitle}`;
await github.rest.issues.update({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number,
title: newTitle
});

actions/checkout@v3: 카운터를 저장·갱신하기 위해 리포지토리를 체크아웃합니다.

einaregilsson/build-number@v3: Git ref를 이용해 1씩 증가하는 빌드 번호(BUILD_NUMBER)를 생성합니다.

actions/github-script@v6: JavaScript로 이슈 제목을 “[www][#번호] 원래제목” 형태로 업데이트합니다.


3단계: 커밋 & 푸시

git add .github/workflows/auto-number-issues.yml
git commit -m "Add auto-number-issues workflow"
git push origin main

기본 브랜치(main 또는 master)에 푸시하면 워크플로우가 자동 활성화됩니다.


4단계: 동작 확인

GitHub 저장소의 Actions 탭에서 “이슈 자동 번호 매기기” 워크플로우가 보이는지 확인합니다.

새 이슈를 하나 열고 임의의 제목을 입력한 뒤 발행합니다.

몇 초 내로 제목이 [www][#1] 원제목 형태로 변경되는지 확인하세요.

이후 열리는 이슈마다 순번이 차례로 올라가는지도 테스트해 보세요.


팁 & 커스터마이징

  1. 접두사 변경: [www] 대신 [frontend], [backend], 날짜([2025-05-24]) 등을 넣어보세요.
  2. 프로젝트별 카운터: 카운터를 분리(ref 이름 변경)해 브랜치별·폴더별로 관리할 수도 있습니다.
  3. 포맷 응용: [#${seq.toString().padStart(3, '0')}]처럼 001, 002 형식으로 0 채우기 가능!
  4. 로그 확인: Actions UI에서 각 스텝의 로그를 펼쳐 보면 오류 원인을 쉽게 파악할 수 있습니다.


이렇게 설정해 두면, GitHub Projects나 Issues 페이지에서 별도 수작업 없이도 항상 일관된 순번과 접두사를 붙일 수 있어 관리가 훨씬 깔끔해집니다.

지금 바로 적용해 보시고, 원하는 포맷으로 자유롭게 변형해 보세요!







댓글

ebsl**************** 2025.05.30 14:44:54
짜투리메모 시리즈 너무 좋아요. GitHub 이슈 자동 번호 매기기 팁 덕분에 프로젝트 관리가 훨씬 편해졌답니다. 매번 유용한 정보 공유해주셔서 감사해요!