2011-08-18 164 views
2

我有以下的歷史爲我的項目的分支:SVN:如何查看哪些文件兩個版本(忽略中間版本)之間變化

  • 3780 - 更新我做
  • 3803 - 合併從同事的分支
  • 3804 - 增加了一些小功能
  • 3805 - 做的3803反向合併,找出同事的分支後出現的問題

有沒有辦法找出哪些文件在版本3780和3805之間發生了變化,而沒有被已被更改回原始狀態的文件所誤導?我試圖驗證3780-> 3805的淨效應是一組相對較小的變化。

例如如果文件X.cpp在r3803中更改,然後在r3805中更改爲與3780中相同的狀態,我不需要在我的diff中看到X.cpp。

注:這是一樣How do I see what files were changed between 2 revisions?,哪些文件在任何起點和終點之間的修訂改變其狀態的答案。

回答

3

你可以這樣做:

svn diff -r 3780:3805 . 

假設你在目錄中,你想執行這個。

+0

好的,謝謝。我讀了我引用的其他問題,當我嘗試了前兩個答案時,我收到了一大堆修改後的文件,這不是我想要的。 –

+0

謝謝。這正是我需要的。有時閱讀SO比閱讀手冊要快。 ;-) – wojciii

2

嘗試svn diff -r 3780:3805 http://url _of_your_branch

1

您是否考慮過以下事項?

  1. 退房3780,然後在臨時目錄A.導出內容
  2. 退房3805,然後在臨時目錄B.
  3. 使用WinDiff的(或同等學歷)來比較出口和內容B'
+0

考慮過,但由於構建樹大小而耗時 –

0

要回答原來的問題,如果你想看到的文件列表,而不是所有的差異細節:

svn diff --summarize -r 3780:3805 [target] 
相關問題