Notice
Recent Posts
Recent Comments
Link
나의 GitHub Contribution 그래프
Loading data ...
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Code in Life

[Git으로 협업하기] Git Project & Git issue 본문

Git

[Git으로 협업하기] Git Project & Git issue

퓨끼 2020. 12. 6. 12:20

프로젝트를 하게 되면 협업을 위한 의사소통 비용이 발생하는데, 이를 최대한 줄여나가야 진도가 나갈 것이다.  

이런 의사소통을 하기 위해서는 카카오톡이나 Slack 등을 꼽아볼 수 있는데 카카오톡의 경우는 접근성이 좋지만 일상적인 대화까지 섞이기 때문에 제때 정리된 내용을 파악하기가 힘들다.

 

Slack의 경우는 프로젝트에 대한 내용만 언급할 수 있어서 좋지만, 이것만으로는 부족할 때가 많을 것이다.

예를들어, 다른 팀에서 현재 어떤 단계를 수행중인지 알아야 우리팀에서도 이에 맞춰 우선순위를 조율할 수 있을 것이다. 또한 프로젝트 도중에 발생한 버그나 이슈등에 대해 따로 모아서 확인할 수 있는 도구까지는 Slack에서 지원을 하고 있지 않다. 

 

만약 팀에서 버전관리 툴로 Git을 사용하고 있다면, Github에서 제공하고 있는 Git Project와 Git issue를 사용하는걸 추천한다.

 

1. Git Project

각 팀에서 어떤 할 일들을 수행중인지, 어떤 단계인지 등을 확인할 수 있다.

Repository로 가서 [Projects]탭에 들어가면 현재 열려있는 프로젝트들을 확인할 수 있다.

원하는 프로젝트가 없다면 새로 만들면 된다. Template를 선택할 수 있는데, 나는 None를 주로 사용한다.

프로젝트를 만들었으면 이제 Column들을 생성해야 한다. 

Column들의 경우 Automation에서 To do, In progress, Done을 제공해주고 있다. 

 

 

To do에서는 다음과 같이 제공한다.

 

1) issue

- Newly added : Git issue에 올라오는걸 자동으로 이 컬럼에 추가할 것인가?

- Reopened : 닫혔던 Git issue가 다시 오픈되었을 때 자동으로 이 컬럼에 추가할 것인가? 

 

2) pull request

- Newly added : Pull request를 자동으로 이 컬럼에 추가할 것인가?

- Reopened : 닫혔던 Pull request가 다시 오픈되었을 때 자동으로 이 컬럼에 추가할 것인가?

이 설정들은 컬럼을 생성하고 다시 편집할 수 있으므로 모르겠으면 일단 다 체크해도 무방하다.

나의 경우 To do에서는 Newly added와 Reopened를 체크하는 편이다.

이번엔 In progress 컬럼을 만들어보자. 위에서 설명하지 않았던 부분만 설명하겠다.

- Approved by reviewer : pull request가 승인됨

- Pending approval by reviewer : pull reqeust를 승인 대기중

코드를 작성한 뒤 commit & push 했다고 끝난게 아니라 원격 저장소에 pull request를 요청하게 된다.

이때, 작성한 코드가 문제가 없는지 확인하는 단계가 필요한데 보통은 리뷰어가 검수하기 전까지 대기하는 편이다.

나의 경우 In progress에서는 Newly added와 Pending approval by reviewer를 체크하는 편이다.

Done은 컬럼에 올라갔던 레코드가 마무리 된 상태를 의미한다. 

- Closed : 프로젝트에 올라갔던 Git issue가 닫혔을 때 추가된다. 

- Merged : pull request가 성공적으로 원격저장소와 합쳐졌을 때 

- Closed with unmerged commits : pull request가 거절당했을 때

 

2. Git issue

여기서는 프로젝트 도중에 발생한 버그, 이슈, 트러블 슈팅, 가이드 등을 관리할 수 있다. 

누구나 New issue 버튼을 통해 issue를 생성할 수 있다.

Git issue는 다른 issue툴보다 가독성이 좋은편이다. 그 이유는 알록달록한 색의 라벨을 생성해서 관리할 수 있기 때문이다. 해당 라벨들은 프로젝트 이슈에 목적에 맞게 설정가능하며, 잘못 달았을 때 projects와 마찬가지로 편집가능하다.

 

Comments