SVN:已存在同名的版本化目录

时间:2009-08-06 19:20:14

标签: svn

我们在CVSDude的帐户本周已迁移。在没有能够访问我们的仓库的一周的后果之后,它被备份了稍微不同的URL(' - '基本上改为'。')。 我们使用TortoiseSVN的重定位命令切换工作副本,它已经工作了一天非常顺利。

但是今天,我开始在执行更新时在标题中收到错误。我删除了有问题的文件夹,因为它很小,并再次更新。该文件夹在我的工作副本中重新创建,但另一个文件夹开始出现相同的错误。

我用Google搜索了,这是两个常见的答案:

  • 您更改了目录名称的大小写
  • 您错误地检入了.svn文件

我们根本没有更改任何文件夹 - 第一个开始抱怨的文件夹没有被触及 - 我还仔细检查了.svn的东西。团队中的其他人没有报告同样的问题,他们也使用Windows + TortoiseSVN。

思想/启示?

4 个答案:

答案 0 :(得分:6)

尽管现有目录具有预期的URL,但这种情况始终在版本1.6.17中发生。我通过将目录移开,进行更新或检出,然后将其移回,破坏刚刚获得的目录来解决这个问题。愚蠢,但它的确有效。

mv dir dir2
svn co blah .
rm -rf dir
mv dir2 dir

答案 1 :(得分:1)

这听起来很像旧的区分大小写问题。如果你运行svn log,你会看到repo认为你的目录应该是什么情况。与您当地的人比较。我认为从备份中恢复回购并不是闻所未闻的,一切都改变了。

另一种选择是IDE或工具hs改变了目录/文件的大小写。偶尔使用Visual Studio会发生这种情况。乌龟通常会告诉你确切的问题并让你解决它。

您仍然可以尝试清理可能会修复损坏的.svn目录。

如果你想要Windows的svn二进制文件,我只是从VisualSvn Server安装中获取它们。

答案 2 :(得分:0)

我想我会做一个新的结账而不是更新。你能在相关目录上做一个svn log -v吗?

答案 3 :(得分:0)

如果您在另一个应用程序(或命令行)中打开了文件或目录,也会发生这种情况。例如,如果svn尝试更新包含文件栏的目录foo,并且您在cmd或cygwin中有foo活动,或者在编辑器中打开了foo / bar。 Textpad特别糟糕,有时您可能需要完全关闭它。

一个很好的Windows实用程序,用于查找哪些应用程序在目录/文件上打开了锁定,是#34; unlocker"。