2012-05-09 2 views
8

SVN 브랜치의 라인 변경 수를 더해서 트레이드와 병합 할 때 프로젝트가 진행되는 동안 다른 곳에서 얼마나 멀리 갔는지, 갈등 가능성을 예측할 수 있습니다.SVN 분기에서 변경되거나 추가 된 라인의 수를 계산하는 방법은 무엇입니까?

내가 생각할 수있는 방법은 통합 된 diff를 가져 와서 grep | wc -l 해킹을 수행하는 것이지만 문제는 다른 파일 유형 (예 : 프런트 엔드 소스 파일 (.css, .html) 및 백엔드 소스 파일 (.xml, .java)

+2

가능한 충돌에 대한 느낌을 얻는 훨씬 더 좋은 방법은'--dry-run' 옵션입니다. –

답변

12

Cosidering beginRev 당신이 최종 개정으로 측정하고 endRev 할 변경 집합의 초기 버전과 같이이 당신에게 파일의 출력을 줄 것이다

svn diff --summarize -rbeginRev:endRev <URLtoBranch> 

, 삭제 및 수정이 추가되었습니다.

나는 당신이 diffstat 통해 SVN은 diff 출력을 구문 분석 할 수있는 더 상세 수준 원하는 : 이것은 각 파일에 대한 정보와 변화의 히스토그램을 반환합니다

svn diff -rbeginRev:endRev <URLtoBranch> | diffstat 

, 그리고 파일의 요약을 변경, 라인 추가 삭제되었습니다.

+0

Diego의 예에서 명확한 지 알 수는 없지만 이렇게 해보았을 때 로컬 URL을 원격 저장소에 대한 URL로 사용해야했습니다. – ganime

4

StatSVN 등이 있습니다. 나는 그것을 잠시 뒤로 사용했고, 개발자의 피드백을주는 데는 좋았습니다. 나는 그것이 당신에게 필요한 것을 정확하게 줄지는 모르겠지만, 빨리 볼만한 가치가있을 것입니다.

관련 문제