我想要獲取已刪除文件的內容。爲什麼svn忽略我的-r參數?
$ svn log -v path_to_file/
...
r123 | user | date
D path_to_file/the_file
好的,所以它在修訂版本123中被刪除,並在版本10左右添加。
$ svn cat -r 122 svn+ssh://server/repo/path_to_file/the_file
svn: File not found: revision 554, path '/path_to_file/the_file'
$ svn log -r 122 svn+ssh://server/repo/path_to_file/the_file
svn: File not found: revision 554, path '/path_to_file/the_file'
這是爲什麼?有任何想法嗎?
'@ rev'&'-r rev'有兩個不同的用途。 '@ rev'尋找特定的修訂版以找到該URL。 '-r rev'爲您提供該修訂版本的URL內容。這就是爲什麼你必須指定'@ rev'來檢索已刪除目錄的日誌 - 如果沒有指定'@ rev',它就好像使用了'@ HEAD'一樣。在這裏給出的例子中,'svn log svn + ssh:// server/repo/path_to_file/the_file @ 122 -r 122'將產生與svn log svn + ssh相同的輸出:// server/repo/path_to_file/the_file @ 100 -r 122'(假設該文件也存在於版本100中) – alroc 2013-02-21 21:06:58