我想在SVN分支中添加行數變化的數量,這樣我就可以知道我在另一方的項目中走了多遠,並在我將它與trunk結合時估計衝突的可能性。如何統計SVN分支中更改或添加的行數?
我能想到的方式是獲取統一的差異並執行一些grep | wc -l hacks,但問題在於很難區分不同的文件類型,例如前端源文件(.css,的.html)和後端的源文件(.XML,名爲.java)
我想在SVN分支中添加行數變化的數量,這樣我就可以知道我在另一方的項目中走了多遠,並在我將它與trunk結合時估計衝突的可能性。如何統計SVN分支中更改或添加的行數?
我能想到的方式是獲取統一的差異並執行一些grep | wc -l hacks,但問題在於很難區分不同的文件類型,例如前端源文件(.css,的.html)和後端的源文件(.XML,名爲.java)
Cosidering beginRev只要你想測量和endRev作爲最終修訂變更的初始版本:
svn diff --summarize -rbeginRev:endRev <URLtoBranch>
這會給你的文件的輸出增加,刪除和修改。
我你願意,你可以通過diffstat
解析SVN diff的輸出更詳細級別:
svn diff -rbeginRev:endRev <URLtoBranch> | diffstat
這將返回與每個文件信息的變化的直方圖,以及文件的摘要改變,線增加並刪除。
我不知道Diego的例子是否清楚,但是當我嘗試這樣做時,我需要使用本地URL而不是遠程存儲庫的URL。 – ganime
StatSVN可能是你在找什麼。我短暫地使用了一段時間,並且給開發人員反饋似乎很好。我不確定它是否能夠準確地滿足您的需求,但可能值得一看。
有一種更好的方式來感受可能的衝突:'--dry-run'選項。 –