본문 바로가기

공부방/git

Github을 잘 사용해보자! (Issue와 commit)

이번에는 github에 있는 기능들을 십분 활용해보자 또는 적재적소에 잘 사용하지 못하더라도 경험을 해 보자 하는 차원에서 시작해본 내용이다.

 

github에는 내가 사용해보지 않은 많은 기능들이 있었다.

이번에는 그 중에서 Issue와 commit을 잘 사용해보자 라는 생각에서 시작하였다.

issue와 commit을 잘 조합해서 사용한다면 어떤 기능을 어떻게 구현했는지 남들이 더 보기 좋게, 또는 동료들이 한눈에 파악하기 쉽게 만들 수 있을 것 같았다.

 

issue와 commit을 살펴보던 중 project와 milestone이라는 것을 알게되었고

이것도 같이 사용을 해보면 좋겠다고 생각을 하여 팀원들과 의견을 공유하며 어떻게 사용할 지를 정하였다.

 

Project


상단 메뉴바에 존재하며

Project는 Issue와 PR의 진행상황을 한 눈에 보기 좋게 만들어주고 있습니다.

추가적인 기능을 적용하면 우리가 만든 이슈는 자동으로 Todo category에 이동을 하고, Issue를 close 했을 때는 자동으로 Done이라는 카테고리로 이동을 한다.

 

milestone과 비슷하게 issue를 관리하고 있지만

milestone보다는 조금 더 큰 개념이라고 생각이 되며, project를 여러개 만들기 보다는 우리 repository의 전체 흐름을 살펴보는 용도로 사용하기로 하였다.

Milestone


Milestone은 상단 메뉴바에서 Issue 탭에 들어가면 우측 아래에 확인할 수 있습니다.

프로젝트와 유사하게 Issue를 관리하는 역할을 하고 있지만, 조금 더 작은 개념이며 스케쥴링을 하는데 특화되어 있다고 보면 될 것 같습니다.

각각의 issue는 어떤 milestone에 속하는지 설정을 할 수 있으며

Milestone에서 issue들의 진행도를 한눈에 살펴볼 수 있으며, 기한을 정해서 모든 개발자가 자신의 기한을 확인하고 프로그래밍에 열중할 수 있도록 만들어 주는 역할을 하고 있습니다.

 

Issue


가장 중요한 issue 부분입니다. 

commit의 공통적인 주제를 issue로 발행해도 되며 발견된 버그나 추가할 기능을 issue로 발행해도 됩니다.

첫번째 목표는 commit의 공통적인 주제를 issue로 발급하여 어떤 기능이 어떤 commit에서 어떻게 구현되었는지를 한눈에 파악할 수 있도록 만드는 것이 저의 1차적인 목표입니다.

 

issue는 issue 탭에서 new issue 버튼을 클릭하여 발행할 수 있으며

우측에서 작업자와 우리가 이때까지 만들었던 project와 milestone등을 설정할 수 있습니다.

 

Commit


 

 commit과 issue를 잘 활용하는 것이 git을 잘 사용하는 방법중에 하나라고 생각합니다.

commit에 #issue 번호를 기재하여 어떤 commit이 어떤 issue에 속하는지 또는 어떤 issue에 어떤 commit들이 있는지를 한눈에 파악할 수 있도록 하였습니다.

 

commit에서 #4번을 누르면 issue 탭으로 이동합니다.

commit 메세지만 잘 쓴다면 위와 같이 commit을 통해 issue로 이동할 수 있으며

반대로 issue 탭에서도 commit으로 갈 수 있도록 자동으로 지정이 됩니다.

 

 

 

첫 github 설계는 아래와 같습니다.