在SVN中重新集成带有外部依赖的分支失败

13

我正在做的事情:

  1. 将外部属性应用于主干中的文件夹(单个文件和文件夹都有外部属性,外部属性是二进制文件)

  2. 从主干创建一个分支并更新整个项目

  3. 修改分支上的文件并提交更改,然后更新整个项目。

  4. 合并 -> "重新集成分支",当我到达最后一个屏幕时,我点击"测试合并",然后收到以下错误:

    错误:无法重新集成到混合修订工作副本中;请先尝试更新

我更新了整个项目,但仍然出现相同的错误。

其他观察结果:

  • 如果我"合并一系列修订版本",一切正常。
  • 如果我删除外部属性,使用"合并一系列修订版本"或"重新集成分支"都可以正常运行。

我该如何解决这个问题?

我正在使用Subversion 1.6.6和TortoiseSVN 1.6.6。

2个回答

12
每次提交时都会出现“混合修订”状态,执行更新操作后该状态会消失。
在执行merge --reintegrate命令时,必须从主干检出执行。
因此,“混合修订”消息很可能是说主干检出处于“混合修订”状态,而不是您要重新集成的分支。
这与您提到刚在主干上提交了一些内容的信息是一致的。
在您的主干上进行更新操作(TortoiseSVN使用的主干检出),然后问题应该就解决了。
我也遇到了同样的问题,并没有立即意识到是主干处于“混合修订”,而不是我的分支。

1
这应该是正确的答案。正如@Offirmo所说的那样。我也遇到了同样的“问题”,他的答案澄清了情况。 - AdrianoRR

7
我找到了一个解决方法。
  1. 获取你要集成的分支的修订号。

  2. 使用TortoiseSVN更新到该修订号,并将分支修订号放入指定的文本框中。

  3. 勾选“省略外部引用”复选框。

现在重新将分支重新集成到主干,一切正常。

注意:我尝试过多个客户端,包括SmartSVN和TortoiseSVN。它们都有相同的错误。


“使用TortoiseSVN更新到修订版解决了我的问题!” - dap.tci

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接