개발자의 오르막

[비사이드 #3] Github Issue 를 활용한 팀프로젝트 환경 셋팅 본문

Toy Project/비사이드

[비사이드 #3] Github Issue 를 활용한 팀프로젝트 환경 셋팅

계단 2022. 5. 21. 14:41

 

 

위드펫을 다른 개발자들과 협업하여 공동 개발하기 위해서 깃허브를 이용하기로 결정했다.

비사이드에서 제공하는 Organization 이 있지만, 우리 팀원이 최고 권한을 가지기 어려울 것 같아 우리끼리 Organization 을 생성하기로 결정했다.

따라서 Google 에서 공동 계정을 생성하였고, 그 계정과 동일하게 깃허브 계정을 생성한 후 공유했다.

 

 

Organization 생성 방법

  1. 먼저 본인의 깃허브 계정으로 로그인 한 후 우측 상단의 + 을 클릭한다.

2. Organization 계정을 생성하기 위해 연동할 이메일과 계정을 입력하여 생성한다.

 

 

 

깃허브 프로젝트 및 이슈 생성, 연동

우리는 비사이드를 통해 모인 팀원들이다. 물론 우리가 기획한 서비스를 비사이드 기간 (4개월) 내 만드는 것도 좋지만 그 이후의 연속성이 있었으면 좋겠다 싶었다.

현재 우리는 비사이드에서 제공하는 템플릿을 통해 노션에서 커뮤니케이션을 나누고 있지만, 4개월이 종료된 후에는 이 노션이 계속 유지될지 미지수였다.

따라서 깃허브에 프로젝트, 이슈를 잘 구축해놓으면 최소한 개발자들은 깃허브 페이지만 들어가도 이때까지 진행했던 부분들이 녹아져있으니까 좋지 않을까 해서 만들어놓았다.

그리고 마침 회사에서도 깃허브를 사용하기 때문에, 이슈, 프로젝트 등 사용법이 익숙해지면 딱 좋을 타이밍이었다.

 

 

왜 깃허브에서 프로젝트와 이슈 생성을 해야하는가 !!

잠깐 만들어놓고나서 느낀 점은 깃허브 기능들이 정말 유기적으로 잘 연계되어있다는 느낌이었다.

 

어떻게 만드는가에 대한 설명에 앞서 내가 구현한 프로젝트를 보여주는 이유는 깃허브의 커밋, 이슈, 프로젝트들이 아주 이쁘게 연동되어 있다는 점이다.

프로젝트의 일정 → 이슈 발행 → 개발 → 커밋 → 이슈 반영 → 프로젝트

으로 다른 개발자들과 손쉽게 협업을 체계적으로 관리할 수 있다.

 

 

Projects 란?

프로젝트는 작업 현황과 진행도를 볼 수 있는 메뉴이다. 이슈, PR 들을 하나의 작업으로 구분해 그 작업이 현재 어느정도 진행되었는지 확인할 수 있다.

  • ToDo : 해야 할 작업
  • In Progress : 진행 중인 작업
  • Done : 완료된 작업

 

 

Template 종류

  • None : 아무 것도 없이 프로젝트만 생성하는 것이다.
  • Basic Kanban : ToDo, InProgress, Done 이 생성된다.
  • Automated kanban : ToDo, InProgress, Done 이 생성된다. ( 자동화 지원 )
  • Automated kanban with reviews : Todo, InProgress, ReviewInProgress, ReviewApprovedDone 이 생성된다.
  • Bug triage : Needs triage, High priority, Low priority, Close 가 생성된다.

 

 

나는 일단 처음 사용하기에 Automated kanban 을 사용했다.

 

 

Milestone

그 다음은 마일스톤을 작성해보았다. 마일스톤은 따로 메뉴가 구성되어있지 않고 Issue 메뉴에서 마일스톤 탭으로 진입할 수 있다.

프로젝트에서는 Todo, In Progress, Done 으로 현재 이슈 형태를 볼 수 있지만, 마일스톤은 개발 스프린트 단위로 기간과 현재 진행상황을 알 수 있다.

또한 이 마일스톤 역시 이슈를 연동 가능하다는 점

  • 마일스톤 화면, 연동된 이슈와 Description, 마감일을 알 수 있다.

 

 

Issue 발행과 Commit

  • 이슈 발행 역시 Issue 메뉴에서 간단하게 등록할 수 있다.
  • 여기서 각 이슈에 해당하는 번호가 매겨지는데, 아래와 같은 이슈에서는 #3을 commit 메시지에 작성하면 해당 이슈에 commit comment 가 연동되어 기입되게 된다.
  • 그러면 다른 협업하는 개발자가 comment 와 해당 내역에 대한 커밋내역을 볼 수 있다.

 

 

Issue 와 다른 기능들 연동

  • 이슈의 오른쪽 부분을 보면 여러가지를 할당할 수 있는 설정 화면이 나온다.
  • 여기서 우리는 담당자, 라벨, 프로젝트, 마일스톤, 브랜치 등을 연동할 수 있다.
  • 보통 브랜치 명을 딸 때에는 feature/기능명 을 사용하지만, 네이밍 문제에 영향을 받지 않고 싶어 브랜치명을 이슈명과 통일하게 만들어 놓기는 했다.

 

 

 

 

 

 

 

Comments