애플사이다의 iOS 개발 일지

[GitHub] Issues/Milestones/Projects 기능으로 프로젝트 관리 본문

비전공자용 노력/개발 툴

[GitHub] Issues/Milestones/Projects 기능으로 프로젝트 관리

Applecider 2022. 2. 5. 02:29

안녕하세요. 애플 사이다입니다.

 

어떻게 하면 개발 프로젝트를 효율적으로 관리할 수 있을까요?

프로젝트 규모가 커질수록 진행 단계에 따라 Commit을 구분하고, 진행현황 및 Work flow를 파악하는 등 프로젝트 관리 툴이 필요해집니다.

이때 GitHub에서 만들어 둔 Issues/Milestones/Projects 기능을 사용하면 좋습니다.

별도의 프로젝트 관리 프로그램이 필요 없을 정도로 유용한 것 같아요.

 

각 기능과 활용 방법에 대해 알아보겠습니다.

본문의 예시 자료는 이 GitHub 링크를 참고해주세요.

GitHub 상단 탭


요약

  1. Issue : 작업단계별 task 및 sub-task를 관리함 (ex. STEP-1, STEP-2, STEP-2 Refactoring)
  2. Label : Issue에 Label을 추가하여 Issue를 카테고리별로 관리함 (ex. animation bug, iOS, tvOS)
  3. Milestone : Issues를 그룹핑하여 전체적인 진행현황을 추적함 (ex. iOS App Launch - progress 50%)
  4. Project : Issue를 진행상태에 따라 구분하여 work flow를 관리함 (ex. To do, In Progress, Done)

1. Issues

✏️ Issue를 통해 작업단계별 task를 정의하고, 체크리스트를 작성할 수 있다.

만약 프로젝트가 복잡하지 않다면 Issues 기능만으로도 충분하다.

 

먼저 Issues 탭을 사용하려면, 아래처럼 Settings 탭의 Generals에서 Issues 체크박스에 체크를 하면 된다.

Settings 탭에서 Issues 체크박스를 확인

🍎 "애플사이다 만들기 프로젝트"를 진행한다고 가정해보자.

1) 사과 구매, 2) 세척, 3) 으깨기, 4) 사과즙 발효시키기와 같은 4단계가 필요하다면,

아래처럼 4개의 issues를 만들면 된다.

Issue를 생성한 예시

issue를 추가할 때 task의 상세내용을 적어도 좋고, 아래처럼 ✅ 체크박스로 sub-task를 나타내면 매우 유용하다.

체크박스를 만들 때는 - [ ] 내용 형태로 입력해도 되고, 상단의 체크박스 아이콘을 클릭해도 된다.

 

우측 탭의 Labels, Projects, Milestone 설정은 아래에서 설명한다.

체크박스로 sub-task 만들기
완료된 작업은 체크함

커밋 타이틀 끝부분에 Issue 태그 (ex. #1)를 붙이면, 자동으로 커밋이 해당 Issue로 분류되므로 쉽게 모아볼 수 있다.

*아래의 커밋 메시지 템플릿은 [Git] 커밋 템플릿 포스팅을 참고

커밋 타이틀에 태그 #1 작성
해당 커밋을 STEP-1 Issue에서 확인 가능함

2. Labels

Issue가 너무 많아졌다면 어떻게 관리할까?

🏷️ Issue마다 Label을 붙여서 Issue를 카테고리별로 관리할 수 있다.

 

원하는 Issue에 들어가서 우측의 Labels 설정 탭을 클릭하면 추가할 수 있다.

Issue 리스트에서 상단의 Label을 탭하면, 원하는 Label만 필터링해서 볼 수 있다.

Label을 추가한 예시

3. Milestones

Milestone은 이정표를 의미한다.

프로젝트 관리에서 Milestone이란 프로젝트 진행과정에서 반드시 필요한 주요 목표과제를 뜻한다.

 

Milestone을 통해 여러 Issues를 그룹핑하고, 전체적인 진행현황을 추적할 수 있다.

이때 Due Date를 설정하면 시간적인 목표 관리도 가능하다.

 

Issue 탭에서 Milestone을 추가할 수 있다. 

예시로 STEP-1, STEP-2를 그룹핑하여 애플사이다 재료 준비하기 Milestone으로 설정해봤다.

Milestone 작성 예시
2개 Issue에 새로 만든 Milestone을 설정함

만약 STEP-1 작업을 완료하여 Issue를 Closed 처리하면,

아래처럼 Milestone의 진행현황이 50% (Open 1개, Closed 1개)로 바뀐다.

Milestone으로 작업현황 확인

4. Projects

여러 Issue를 한눈에 확인해서 work flow를 명확히 파악하고 싶다면 어떻게 할까?

🧑‍🎓 Project의 칸반 보드를 활용하면 작업을 To do, In Progress, Done 등으로 구분하여 관리할 수 있다.

보통 Basic/Automated kanban을 사용한다.

Project 작성 예시

우측의 Add cards 탭에서 작성해둔 Issue를 확인할 수 있고,

Issue 카드를 To do, In progress, Done 등의 영역에 드래그하면 된다.

 

To do column에서 볼 수 있듯이 간단한 Note를 추가할 수 있다.

이때 작성한 Note를 Convert to issue 하면 Issue 카드로 전환된다.

Kanban board 활용 예시

 

- 예시 자료 링크

- Reference

 

🍎 포스트가 도움이 되었다면, 공감🤍 / 구독🍹 / 공유🔗 / 댓글✏️ 로 응원해주세요. 감사합니다.

Comments