假设我从Chromium
reporsitori'es特定文件中获取更改的行数,就像这样:
svn diff "G:\Develop\Google\Chromium\trunk\src\webkit\glue\entity_map.h" -c 3116
问题在于entity_map.h
不存在,因为概率已被删除。
因此它不存在于工作副本中,不存在于存储库中。
所以我的查询失败了,因为没有什么可以相互比较。即使我尝试使用我在互联网上找到的技术来恢复文件,例如
svn up
(不推荐)svn copy
它失败的原因是没有对应物与之比较并确定文件上的差异。
但是好消息是TortoiseSVN
在这里成功,所以我很确定有一种这样做的方式。
考虑到该文件很久以前被删除,有没有人知道如何更改特定版本中的文件。 ?
编辑
宁愿避免使用Subverison
具体的C
函数,而只使用提供的command-line
接口。
答案 0 :(得分:1)
将svn diff
与-r oldrev:newrev
一起使用 - 您要与2个指定的修订版#进行比较,并且两个版本都存在。
假设文件可能已被移动,因此它不再存在于同一位置,并且您仍希望进行比较,这种语法也可能有用:
diff OLD-URL [@OLDREV] NEW-URL [@NEWREV]
大多数svn命令(包括svn diff
)功能齐全。请检查svn help diff
以查看所有可用选项 - 并对每个选项进行说明。