我有一个SVN文件,现在缺少一些逻辑,所以我需要回到大约40次修订,当时它有我需要的逻辑。除了尝试在命令行中查看文件的差异(非常难以阅读)之外,我还是可以获得该文件的副本以供查看,以便我可以研究它来恢复部分? / p>
答案 0 :(得分:228)
您可以更新到旧版本:
svn update -r 666 file
或者您可以直接查看该文件:
svn cat -r 666 file | less
答案 1 :(得分:4)
将当前工作版本的文件与另一个版本的同一文件进行比较也很有意思。
您可以执行以下操作:
$ svn diff -r34 file
答案 2 :(得分:2)
更新到特定版本:
svn up -r1234 file
答案 3 :(得分:1)
我认为查看修订版的最佳方法是使用一个方便您的程序/应用程序。我喜欢使用trac:http://trac.edgewall.org/wiki/TracSubversion
它提供了一个很棒的svn浏览器,可以很容易地回过头来修改。
为您想要检查的特定修订版本设置它可能有点过分,但如果您将来要做很多事情,它可能会有用。
答案 4 :(得分:1)
使用最新版本的Subclipse,您实际上可以在不使用cmd提示的情况下查看它们。在文件上,只需右键单击=>团队=>切换到另一个分支/标签/修订版。除了修订字段,单击选择,您将看到该文件的所有版本。
答案 5 :(得分:1)
直接回答如何“获取该文件的副本”的问题:
svn cat -r 666 file > file_r666
然后,您可以使用任何查看器或比较程序查看新创建的file_r666
,例如
kompare file_r666 file
很好地显示了差异。
我发布了答案,因为接受的答案的命令实际上没有提供文件的副本,并且因为svn cat -r 666 file | vim
与我的系统(Vim: Error reading input, exiting...
)不兼容