svn - 是否可以通过反向合并恢复某些 SVN 修订版?

标签 svn tortoisesvn visualsvn-server

我的 PC (Windows Server 2012) 上安装了 TortoiseSVN 1.8.7 + VisualSVN Server 2.7.7。最近我的同事告诉我,当他尝试更新时,在对话框列出几个更新的文件后出现“XML 响应包含无效的 XML”错误。当他再次更新时,工作副本被锁定并需要清理。

我使用的是与同事相同的存储库,但我可以毫无问题地进行更新和提交。

经过排查,在事件查看器中发现磁盘错误,打开日志时,看不到早于6291的日志,我尝试打开“project\db\rev\6290”文件,10~ 15秒,内容为空,事件查看器出现更多磁盘错误。我用robocopy复制了所有文件到另一个磁盘,只有上面的文件失败了。

我认为这些修订文件就像 diff 文件,所以也许我可以使用工作副本(当前为 r6295)和 project\db\6291~6295 来“反向合并”到 6290?可能吗?

最佳答案

反向合并在这里无济于事。

首先,确定您的同事所犯错误的根本原因是有意义的。你说你没有得到错误,所以它给我们带来了以下问题:

  • 他的工作副本损坏了吗? 对工作副本运行 svn cleanup 并查看错误是否仍然存在。尝试使用干净的工作副本重现错误也很有意义,例如运行 svn checkout 并查看是否收到错误。

  • 存储库是否已损坏? 针对存储库运行 svnadmin verify -q 并检查其输出。我想在您的情况下,存储库是健康的,但如果不是,那么最简单的解决方案是从备份中恢复存储库。

关于svn - 是否可以通过反向合并恢复某些 SVN 修订版?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25137551/

相关文章:

svn - 使用 VisualSVN 服务器通过 http 获取特定修订

java - eclipse和SVN添加jar文件

svn - 如何在一个范围内从主干到分支进行SVN合并

SVN 客户端无法在一台计算机上访问 CloudForge 上的存储库。在另一个上工作正常。错误消息 PROPFIND 405 方法不允许

svn - 在 TortoiseSVN 中搁置和审查代码

svn - SVN 存储库的转移

svn - 使用 curl 将文件从 subversion 目录复制到 unix 服务器中的某个位置时出现身份验证错误

java - Mac 10.9 上的 Subclipse/Subversion,ANT 调用 svn 信息返回 "too old"错误

SVN 日志未显示对文件所做的所有修订

eclipse - 在 Eclipse 中提交失败