tortoisesvn因删除文件丢失了历史记录,然后添加了相同的文件

时间:2011-02-28 22:50:04

标签: tortoisesvn

我让开发人员'恢复'一个文件,将其从存储库中删除并重新添加。我们现在有一个没有历史的当前文件。有没有办法取回已删除的文件。如果它与现有文件同名,我该如何处理?是的,我试图阅读文档,但似乎无法采取正确的行动组合。

3 个答案:

答案 0 :(得分:5)

  1. 删除工作副本中的文件
  2. 在存储库浏览器中,转到原始文件仍然存在的版本(即更换之前)
  3. 在存储库浏览器中右键单击该修订版中的该文件,执行“复制到工作副本”
  4. 将工作副本中的路径指定为“copy to”-target
  5. 现在您的文件已经包含了历史记录。

答案 1 :(得分:1)

在这里看到这个帖子......

examining history of deleted file

复活你的文件

 svn copy url/of/file@lastrevisionthefileexisted -r lastrevisionthefileexisted path/to/workingcopy/file

答案 2 :(得分:0)

在Linux上,我按照命令行上的步骤解决了问题:

svnadmin create TEST

svn co https://URL/svn/codes/JarLib/ 

删除重新添加的文件或目录

svn delete https://URL/svn/codes/JarLib/XXXX.jar -m "XXXX.jar history resurrect operation"
svn update

使用'svn copy'命令以历史记录获取已删除的文件/目录。修订号必须删除文件/目录的最新修订号!!!

svn copy  https://URL/svn/codes/JarLib/XXXX.jar@22467 -r 22467  XXX.jar

下面的操作会将XXXX.jar添加到您的工作副本中,然后提交更改。

svn commit -m "deleted file/directory is resurrected"

要控制: 转到SVN Server并使用svnlook命令,例如:

svnlook history  /svn/repos/codes /JarLib/XXXX.jar --show-ids