最近我们的Subversion (SVN)服务器发生了变化,我们进行了SVN切换。

由于工作副本有大量未版本化的资源,因此工作副本被锁定,我们开始为SVN下的所有文件夹逐个切换文件夹,这非常好。

但是在存储库的最高层,当我试图更新文件时,我得到一个错误,说svn:工作副本'。的锁。试图清理也无济于事;它会导致诸如svn: 'content'不是一个工作拷贝目录之类的错误。

新的结帐根本不是一个选项。我还可以如何清理和释放锁并完成svn切换过程?


当前回答

我从相同的项目到不同的位置进行了新的签出,从中复制了.svn文件夹,并用旧的.svn文件夹替换它。

之后,我调用svn更新函数,所有内容都正确同步到最新。

其他回答

处理:

重命名不是“工作副本”的目录。 再次签出/更新/恢复此目录。 将重命名目录中的文件移动到新目录中。 提交更改。

原因:

您对.svn目录下的一些文件做了一些更改,这破坏了“工作副本”。

同样,我需要更新一个'contrib'文件夹:

把旧文件夹移出来, 复制一个新的 将.svn文件夹复制到每个新文件夹中(在我的例子中只有三个)。

我的情况下,问题是由于删除。svn文件夹。

解决了。

我只是得到了“没有工作副本”,对我来说,原因是Unix上的Automouter。 只需要一个新的“cd /path/to/work/directory”就可以了。

您必须从项目中删除一个SVN基文件(这些文件是只读文件)。因此你会得到这个错误。

再次签出一个新项目,使用WinMerge将旧SVN项目的更改(如果有的话)与新项目合并,并在最近的签出中提交更改。

可能是工作副本格式不匹配。它在SVN 1.4和1.5之间发生了变化,新的工具会自动转换格式,但旧的工具不再使用转换后的副本。