无法查看从 Subversion 存储库中删除的文件的内容

mar*_*gti 4 svn version-control

不久前我从 Subversion 存储库中删除了一个文件,现在我想看看它的内容。我确定该文件在修订版 68 中已被删除,因此我尝试了以下操作:

svn cat -r 67 path/to/file
Run Code Online (Sandbox Code Playgroud)

从项目根目录,svn 告诉我svn: E155010: The node '/absolute/path/to/file' was not found. 然后我尝试:

 svn list -r 67 path/to
Run Code Online (Sandbox Code Playgroud)

Subversion 清楚地显示了目录中的文件。那么我错过了什么?

我尝试通过检查已删除文件的历史记录来找到答案,但它对我不起作用。

Iva*_*vić 6

尝试使用钉住而不是手术修正:

svn cat http://server/svn/project/file@67
Run Code Online (Sandbox Code Playgroud)

简短的回答为什么它在删除文件的情况下起作用,你可以在你已经提到的SO线程中找到:

当您想查看旧文件时,您确实应该知道以下之间的区别:

svn cat http://server/svn/project/file -r 1234

svn cat http://server/svn/project/file@1234

第一个版本查看现在可用的路径,如 http://server/svn/project/file并检索该文件,因为它在修订版 1234 中。(因此此语法在文件删除后不起作用)

第二种语法获取修订版 1234 中作为 http://server/svn/project/file提供的文件。因此此语法确实 适用于已删除的文件。

更长的答案在 SVN 书中:Peg and Operative Revisions