blog

Jira로 에픽·이슈와 브랜치를 연결해 협업하기

Front-end / Collaboration#Jira#Git#브랜치 전략#협업

팀 프로젝트에서 Jira와 GitHub를 연동해 사용한 방식을 정리했다.

이슈 구조

  • 에픽(Epic): 큰 기능 단위. 생성할 때 시작일과 종료일을 설정한다.
  • 하위 이슈: 에픽을 나눈 실제 작업 단위. 에픽 화면에서 하위 이슈 추가 버튼으로 만든다.
  • 백로그: 언젠가 할 일이지만 지금 보드에 올리기는 애매한 것. 진행할 때 보드로 이동시킨다.
  • 보드: 할 일 → 진행 중 → 완료 단계로 진행 상황을 관리한다.

브랜치 규칙

Jira 이슈 화면에서 바로 브랜치를 생성하면 이슈와 브랜치·커밋·PR이 자동으로 연결된다.

대상분기 기준브랜치 이름
에픽developfeature/{에픽 이름}
하위 이슈상위 에픽 브랜치feature/{에픽 이름}/{하위 이슈 이름}

하위 이슈 하나에는 브랜치를 하나만 만든다.

Git은 feature/login이라는 브랜치가 있으면 feature/login/api 같은 브랜치를 만들 수 없다(이름이 디렉터리처럼 저장되기 때문). 에픽 브랜치와 하위 이슈 브랜치를 같은 경로 아래에 두려면 feature/login, feature/login-api처럼 구분자를 바꾸거나, 커밋·PR 제목에 이슈 키(PROJ-123)를 넣는 방식으로 연결한다.

PR 흐름

  1. 보드에서 이슈를 연다.
  2. 연결된 브랜치에서 풀 리퀘스트를 만든다.
  3. 대상(base) 브랜치를 자신의 에픽 브랜치로 지정한다.
  4. 에픽의 하위 이슈가 모두 병합되면 에픽 브랜치를 develop으로 PR한다.