2011-01-20 73 views
4

我在SVN更改列表和svn diff中遇到了一些麻煩。特別是我想獲得指定修訂版本的某個文件列表的更改歷史記錄。 SVN變更表中看似完美的解決方案,所以我的做法是:帶修訂範圍和更改列表的SVN差異

  • svn changelist LIST a.txt b.txt d.txt ...
  • svn diff --changelist LIST --revision 2:3

不幸的是,這包括所有文件,即使是那些沒有變更列表。使用沒有--revision的相同語法可以很好地工作。

我懷疑changelists是專門爲工作副本而設計的,根本不考慮歷史因素。如果是這樣,最簡單的選擇是什麼?

回答

1

據SVN書chapter on changelists的:

的--changelist選項僅充當 過濾器Subversion命令的目標, 並不會增加目標到 操作

如果您將--changelist選項替換爲實際的文件列表,例如a.txt b.txt d.txt ...即可獲得所需的輸出。我猜這個命令的行爲是使用當前的工作副本目錄作爲目標,然後它無法爲更改列表應用過濾器。

+0

替換`--changelist`確實是一個聰明的想法,我沒有考慮過。謝謝! – 2011-01-20 16:29:34