소스저장소의 변경내역을 한번에 보고 싶으신가요?

Commit 그래프 사용하는 방법




Adam AhmedFishEye에 대해 이야기합니다. (2011년 6월)

이제 개발자는 FishEye 를 이용하여 저장소를 다른 사람들의 변경사항들이 어떠한 것인지를 큰 그림으로 시각화하여 볼 수 있게 되었습니다.

이것은 처음에는 약간 적응이 되지 않을 수 있지만 이제 그 사용방법을 잘 설명해 드리도록 하겠습니다.


코드 리뷰 중입니다




저희는 이전 버전에서 몇 가지 요구사항을 받았습니다. 그 중 하나는 이제 Commit 그래프를 통해 어떤 커밋이 리뷰 준비가 되었고 안 되었지는 확인할 수 있습니다.

Reviewed 체인지셋 하이라이터를 이용하여, 어떤 커밋이 머지 (초록색 점이 리뷰가 종료되었음을 의미) 준비가 되었는지를 확인할 수 있습니다.

그리고 빨간색 점은 아직 리뷰되지 않은 상태라는 것을 의미하며, 노란색 점은 현재 리뷰 중인 상태를 의미합니다.

이것을 이용하면, 현재 내가 작업중인 코드들이 리뷰 상태로 들어갔는지 바로 확인하여 전체적인 작업 진행상태를 확인할 수 있습니다.


커밋을 병합하는 경우, 병합되었던 모든 커밋을 병합니다






특정 커밋이 현재 리뷰중인 것을 확인하는 것만으로는 부족합니다.
릴리스에 원하지 않는 코드가 포함되어 있을 수 있기에 Lineage highlighter를 이용하여 브랜치 해드를 클릭하여 바로 어떤 변경사항이 머지되지 않았는지 확인할 수 있습니다.

혹은 commit-to-be-merged 를 클릭하여 어떤 커밋이 연관되었는지를 확인하고 리뷰되어 준비된 상태인지를 확인할 수 있습니다.




이슈 처리.






제가 커밋한 것은 결국 JIRA를 통해 종료됩니다.
리뷰 혹은 커밋과 연관된 JIRA 이슈를 처리할 때는 JIRA 이슈 하이라이터를 이용하여 (UAL연결을 통해 JIRA와 연결되어 있어야 함) 제 커밋내용이 머지되었는지를 확인할 수 있습니다.

JIRA 이슈를 종료시키는 조건은 수정한 코드 커밋이 릴리스에 포함되는 것입니다. 만약 그렇지 않다면 머지되지 않은 코드를 남기고 릴리스가 될 것입니다.


그래프의 공유




T

연결링크를 이용하여 현재 보고 있는 브랜치를 포함한 그래프의 보기화면을 다른 사람과 공유할 수 있습니다.

URL이 많이 길어질 수 있지만, 중요하다고 생각하지는 않았고 여기에서 보는 바와 같이 잘 사용하고 있습니다.


기타







그래프는 정말 좋습니다, 그렇지만 언제나 작업의 끝은 아닙니다.

Ctrl/Cmd+C 단축키는 hg 업데이트 혹은 merge (또한 svn switch 혹은 svn merge … 혹은 다른 SCM 명령어)를 쉽고 빠르게 붙일 수 있습니다.
이것은 그래프에서 체인지셋을 찾고 메인브랜치에 머지 준비 하는데 매우 유용합니다.


골드피처 주)




이제 전체적인 저장소의 변경사항을 커밋 그래프를 통해 일목요연하게 볼 수 있게 되었습니다.

이것은 마치 JIRA 에서 이슈들에 대한 통계그래프를 얻는 것과 비견되는 것으로 프로젝트 관리현황을 그래프로 확인하는 것처럼 저장소의 진행현황을 마치 프로젝트 상황처럼 볼 수 있게 되는 것입니다.

이와 더불어 금번 릴리스에서 포함된 리뷰내용에 대한 검색기능까지 포함하여 명실상부한 저장소의 지식화가 가능하다고 할 수 있게 되었습니다.

댓글

이 블로그의 인기 게시물

Confluence 내의 스프레드 시트 기능이 필요하시다면 애드온을 활용해 보십시요

Confluence 페이지의 분류와 관련된 잘 몰랐던 기능 3가지를 확인해 보십시요

시스템에 숨어있는 "윤초" 버그에 대해 준비하십시요