2013-01-17 4 views
3

현재 개발 환경에서 VCS 용 git을 사용하며 우리는 기능 분기 워크 플로를 사용합니다. 통계가 각 기능에 대해 생성 될 수있는 지점을보고 싶습니다. 주로, 기능을 완료하는 데 걸린 시간을 결정할 수 있기를 원하지만 커밋 수, 코드 줄 수 등과 같은 다른 통계도 잘 볼 수 있습니다.git 워크 플로의 기능 분기 통계

주요 고려 사항은 다음과 같습니다. 개발자를 위해 불필요한 작업/프로세스 단계를 피할 수는 있지만 "해당 기능을 사용하기 전에 기능 지사를 만들어야합니다"와 같은 간단한 기능을 구현하지 않아도 해당 타임 스탬프를 캡처 할 수 있습니다.

필요한 정보를 수집하는 가장 좋은 방법은 확실하지 않습니다. 피쳐가 메인 라인 브랜치에 병합되고 삭제되면 생성 된 내역을 잃어 버리게됩니다.

내가 볼 수있는 다음 해결책은 post-checkout 후크입니다. 다음과 같은 것 : https://gist.github.com/4557894하지만이 방법을 사용하여 생각할 수있는 몇 가지 결함이 있습니다.

편집 : @mr_ndrsn에 의해 지적한대로 https://github.com/rietta/git_time_extractor. 위와 같은 도구를 커밋/커밋 메시지 이상으로 연결하는 방법에 대한 아이디어는 지사에 전달됩니까?

답변

0

없이 정보를 추가 할 수있는 유일한 방법 : 같은

  • 언제든지 이름을 변경하거나 삭제할 수 있습니다 가지 (에 따라
  • 커밋 기존 수정하여 역사를 변경 (및 관련 SHA1) 간단한 포인터)

git notes을 사용하는 것입니다.

특정 노트 네임 스페이스에 원하는 정보를 추가 할 수 있습니다.

+0

응답 해 주셔서 감사합니다. 이 맥락에서 어떻게 노트를 사용하도록 제안합니까? 메모의 의미는 무엇이며 어떻게 추가됩니까? – zgohr

+0

@ zgohr 저장하려는 데이터를 저장하는 데 사용되지만 일관성을 유지하는 것은 사용자의 몫입니다. 메모 네임 스페이스에 메모를 추가하는 방법은 http://stackoverflow.com/questions/9839862/adding-git-notes-to-a-blob/9856913#9856913 및 대부분 http://git-scm.com에 나와 있습니다. /2010/08/25/notes.html – VonC

+0

주요 목표 중 하나는 자동화를 극대화하기 위해 가능한 많은 단계를 피하는 것입니다. – zgohr