我有一个非常烦人的问题,我试图将我们的主干合并到我的分支中以进行一些更新。我每天都这样做,但几乎每一天我都会收到以下错误:
Error - 'D:\Code\Website' is already locked via 'D:\Code\Website'.
只有非常随机地不会发生此错误,并且我能够成功地将主干合并回分支。但是,我整天都在尝试从后备箱中获取最新信息,但没有成功。我一直在寻找这个问题的答案。所以,谷歌,互联网上的随机论坛......等等。我希望有人能解释为什么会发生这种情况。
这是我已经尝试过的:
- 对目录中的每个文件夹运行“清理”。
- 检查 .svn 目录中的“锁定”文件 - 不存在。
- 打开 wc.db 文件并检查 WC_LOCK 表 - 里面什么都没有。
- 禁用防病毒。
- 禁用 IIS。
- 检查了分支的新副本。
- 更新 TortoiseSVN
- 使用 TortoiseSVN.net (1.7.10.23359, SVN 1.7.7) 的最新 MSI 完成卸载并重新安装 TortoiseSVN。
我能够更新分支并提交它.. 从来没有问题。只是将主干合并回来导致我出现问题。团队中的其他人似乎没有这个问题(这个分支或任何其他分支)。他们可以自由地检查分支。合并主干并毫无问题地提交它。
我正在使用 TortoiseSVN。你们得到的任何帮助都会很棒!
编辑:另外,测试合并有效..但实际合并没有。
更新
事实证明,TSVNCache.exe 不断地持有 wc.db 文件的锁。我不知道为什么。即使我杀死了这个过程;一旦我通过 TSVN 合并 GUI,它会再次启动缓存并锁定它。我已经设法通过命令行成功合并..有没有办法解决缓存锁定问题以避免不得不依赖命令行?