HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🧚
[1기]최종 프로젝트 데브코스
/
👼
[팀2] 극락이들
/
[FE] GitHub 협업 가이드
[FE] GitHub 협업 가이드
[FE] GitHub 협업 가이드

[FE] GitHub 협업 가이드

🧨Git FlowGit Flow Convention Kanban ConventionPR/ISSUE ConventionISSUEISSUE 제목ISSUE 내용Branch 생성Commit ConventionPull RequestPR 제목PR 내용 Review

🧨Git Flow

Git Flow Convention


Kanban Convention

  • To do
    • Epic/Story/Task 이슈와 같이 필요한 작업들이 카드로 명세되어 집니다.
  • In progress
    • 이슈에 대해 현재 작업 중인 PR이 등록됩니다.
    • 등록된 카드에 대해 작업이 완료되었을 경우 수동으로 Review in progress 섹션으로 카드를 이동시켜야합니다.
  • Review in progress
    • 이 곳에 등록된 PR은 리뷰를 기다리는 PR으로 팀원분들이 리뷰를 작성해주셔야 합니다.
    • 본인이 최종으로 리뷰를 작성하는 경우 Approved로 리뷰를 등록해주시고 최종이 아닌 경우 Comment로 등록해주세요.
    • 최종으로 Approved로 리뷰를 남기는 경우 이 섹션의 PR이 Reviewer approved 섹션으로 자동 이동 됩니다.
  • Reviewer approved
    • 팀원 전체 리뷰가 완료된 PR의 공간
    • 본인의 PR이 이 섹션에 존재하는 경우 팀원들의 리뷰가 완성되었다는 뜻입니다. 그러므로 리뷰를 반영하여 팀원들의 최종 확인을 거쳐서 PR Merge 및 브랜치 삭제를 진행하시면 됩니다.
    • 여기서 Merge 규칙은 Rebase 규칙으로 진행합니다.
  • Done
    • 최종적으로 PR이 Closed 되었을 때의 공간입니다.

PR/ISSUE Convention

  • 프론트엔드는 EPIC, STORY, TASK 총 3가지의 단위로 ISSUE가 이루어집니다.
    • (EPIC → STORY → TASK) 단위의 프로젝트 관리
      (EPIC → STORY → TASK) 단위의 프로젝트 관리
  • 필독! 개발자가 알아볼 수 있도록 ISSUE/PR Content는 무조건 한글로 작성할 것.
 

ISSUE

  • ISSUE Template은 EPIC/STORY와 TASK두 가지로 나누어집니다.
    • EPIC/STORY/TASK 가이드 라인

      TASK ( 최소 단위 )


      • 페이지에 들어가는 Element, 기능 구현 등..
        • STORY(중간 목표) 완성을 위한 작은 단위 작업
        • 일기 생성, 일기 수정, 일기 리스트 등으로 <일기 페이지> 구성을 위한 하위 목표들
          • notion image
       

      STORY ( 중간 단위 )


      • 페이지 만들기, 공통 컴포넌트 구성하기 등..
        • EPIC(큰 목표) 완성을 위한 중간 단위의 작업
        • 연결 된 TASK내용 STORY에 명시
        • 일기 페이지 완성
          • notion image
       

      EPIC (큰 목표)


      • 1차 스프린트, 2차 스프린트, 배포 등..
        • 최종 목표를 위한 명시
        • 해당되는 STORY를 EPIC에 명시
       

      BUG (HotFix)


      • 치명적인 문제 발생
        • 문제상황, 발생원인 명시
        • PR의 경우, 해결 방법 명시
        •  
       
  • EPIC/STORY단위 일 경우, 하위 리스트(STORY/TASK)들을 연결 시킨다.
    • 전체적인 프로젝트 진행 확인은 EPIC/STORY를 통해 확인 가능하다.
    • EPIC/STORY 단위의 ISSUE를 생성한다.
      • Assignees, Labels, Projects, Milestone을 설정합니다.
    • TASK 단위의 ISSUE들을 생성한다.
      • Assignees, Labels, Projects, Milestone을 설정합니다.
    • EPIC/STORY 단위 ISSUE에 TASK 정보를 반영합니다.
      • Projects Kanban의 to do 섹션에 STORY 이슈만 수동으로 등록시킨다.
    • TASK단위 일 경우, 구현 해야 할 요구 사항을 적는다.

ISSUE 제목


  • [options] 내용 (ex [Task] Header 구현 )
    • 진행 할 내용을 간단히 ISSUE Title로 작성합니다.

ISSUE 내용


  • 이슈 내용 형식 [EPIC/STORY]
    • ## 📄 연결 된 요구 사항 리스트 - [] #TASK 이슈 번호 - [] #TASK 이슈 번호 ...
  • 이슈 내용 형식 [TASK]
    • ## 📄 요구 사항 <!-- 포스트 조회시 개행 무시 이슈 발견 -->

Branch 생성

  • Editor (CLI, VSCode를 통한 브랜치 생성)
    • git switch -c <branch 명> develop
    • ex)feature/#4 - Option/<ISSUE Number>
    • Branch에서는 feature 만 가져가고, Commit 에서 다른 옵션을 가져가기!

Commit Convention

  • [Gitmoji] [태그 이름] [#이슈 번호] : [커밋 내용]
    • ✨feat #1 : Text 컴포넌트 구현
  • TagList
    • 참고링크 ⇒ 태그의 이미지 정보를 확인하고 싶은 경우 참고
    • (:sparkles:) feat: 새로운 기능을 추가할 경우
    • (:bug:) fix: 버그를 고친 경우
    • (:art:) style: 코드 포맷 변경, 세미 콜론 누락, 코드 수정이 없는 경우, css 작업
    • (:recycle:) refactor: 코드 리팩토링
    • (:package:) chore: 빌드 태스트 업데이트, 패키지 매니저를 설정하는 경우
    • (:truck:) rename: 파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우
    • (:fire:) remove: 파일을 삭제하는 작업만 수행한 경우

Pull Request

  1. 설정 지정
    1. notion image
    2. Reviewers : 본인 제외 팀원 전체 지정
    3. Assignees : 본인 지정
    4. Labels 지정
    5. Projects 지정
  1. Task단위로 Issue close시키면서 작업한다. ex) closed #ISSUE_NUMBER
  1. Task 단위의 개발이 완성되는 경우 Kanban Review in progress로 PR 카드를 이동시키고 팀원들의 리뷰를 기다립니다.

PR 제목


  • [options] TASKISSUE내용 (ex [feat 이슈번호] Header 구현 )
  • 작성한 ISSUE 제목과 일치 시킵니다.
 

PR 내용


## 📌 이슈 > closed #이슈넘버 <!-- PR이 연결된 이슈 번호 작성 --> <!-- ex) close #[이슈번호] --> ## 🛠 작업 사항 <!-- 리스트 기록해보기 --> - task1 - task2 - task3 ## 📝 요약 <!-- PR 내용 요약 --> ## 📸 첨부 <!-- 참고자료링크 및 스토리북 결과물 --> <!-- ex) 링크, 스크린샷 -->
 

Review

  • 코드 리뷰를 Comment로 등록합니다. 하지만 본인이 마지막으로 리뷰를 남기게 된다면 Approved로 리뷰로 등록합니다. 그래야 Kanban에서 자동으로 카드들이 이동이 이루어집니다.
  • Reviewer approved에 본인의 PR이 등록된다면 피드백을 반영하여 팀원들과 소통 후 PR을 종료하고 Merge 및 branch 삭제를 진행합니다.