TortoiseSVN报告冲突,但没有发现冲突

我有一个包含多个Python项目的整个存储库的工作副本。 当我select右键单击 – >在Windows文件资源pipe理器中的SVN更新我收到一个错误消息列出一个特定的项目文件夹:

Command: Update Updating: path\to\working\copy Skipped obstructing working copy: path\to\working\copy\project Completed: At revision: 176 Warning!: One or more files are in a conflicted state. 

当我去那个项目并右键单击 – > SVN更新,它成功更新。 也没有冲突编辑器可用,当我右键单击 – > TortoiseSVN – >解决没有可用的文件。

什么可能导致冲突? 只要这种情况持续发生,就不可能在我的工作副本中更新这个项目。

 Skipped obstructing working copy 

这意味着有一个工作副本文件夹的方式:你的更新想要添加一个名称为“项目”的文件夹,但你的工作副本中已经有一个版本文件夹“项目”。 也许你从另一个工作副本移动该文件夹? 或者,该文件夹是自己的工作副本(如果它有隐藏的.svn文件夹,那么它是一个独立的,单独的工作副本)。

解决方法:将文件夹移出工作副本(或者将其删除)。 然后再次运行更新。 更新将再次获取具有相同名称的文件夹。 但它可能不一样,所以我build议你移动文件夹,并删除它只有在检查更新后的文件夹是否与原始文件夹相同。

如果您的svn版本支持,您也可以select清理菜单中的“删除未版本化的文件和文件夹”选项。 这肯定会让事情变得简单,而不是一个接一个地search这些文件夹(我总是发现它们是非版本化的副本)。

注意,虽然你不是本地忘记提交任何有效的新文件添加之前,通过这个清洁..!

尝试点击/ TortoiseSVN /清理。

这通常适用于我。

我遇到了同样的问题,但它发生在一个非常大的分支的根目录(c:\svn\root) 。 我只在其中一个目录中深入研究(c:\svn\root\some\dir\deep\down\) ,所以Stefan对问题和解决scheme的解释没有意义。

我的解决方法是在c:\svn\root\单独更新每个目录,然后返回并更新c:\svn\root\ 。 这对我有效。 不知道问题是什么。

我解决了这个问题,而不必移动文件,因为我obstructed子文件夹正确链接到SVN:

  1. 检查具有Skipped obstructing working copy的文件夹的所有文件
  2. 现在,您可以安全地删除阻止的文件夹(因为我们之前签入了所有内容)
  3. 在根文件夹上执行更新

现在整个文件夹再次清理并更新根文件夹的工作。