1
11
从输出
要在合并到主干时接受分支更改,需要“
我认为Tortoissesvn1.6.2在GUI中没有同等的选项。你仍然可以
interactively resolve conflicts
选择“
|
2
6
我相信通过将错误修复从主干复制到发布分支所做的工作有时被称为 rebasing . 在这种情况下,所有的重新平衡意味着你采用一个通常基于主干的修订版R49的分支,并将主干的修订版R50-R57合并到分支中,这样在后面的话,你可以将该分支视为基于主干的修订版R57而不是修订版R49。 实际中的问题是,当将主干或任何其他基础的一系列修订合并到其中一个分支时,它不会重置创建该分支的基础修订,而是保留正常的 mergeinfo 属性是了解合并内容的唯一方法。为了能够将分支的更改重新集成到它的基部(如主干),而不会无意中重放合并后的基部更改,例如在上一个示例中,从R50-R57合并的基部更改将通过cherry选择特定的修订来合并分支到基部的更改,其方式是重新平衡(从分支的基础)不包括在内。 不幸的是,除此之外,由Subversion开发人员来实现一种自动化的方法,以便仅包含不包含MergeInfo属性的修订,该属性描述仅包含原始基本修订和目标修订之间的修订的合并(通常是head)。这变得更复杂了,因为合并通常包括手动更改,这些更改是通过分支上的合并提交进行提交的,合并提交将丢失,而且任何给定对象的源都必须跟踪到它的共同祖先才能正确地处理这些更改。 staircased 树枝。除此之外,允许将分支替换为基础或主干的新副本,并将以前的所有提交重新应用为一系列单独提交的功能也会使这成为可能,但不管多么尴尬,其行为更像是真正的重新平衡。 这些评论不是一个明确的答案,但代表了我作为一个长期颠覆用户的理解。如果有人有任何其他的观点需要补充或可以在我的陈述中选择一些可能不正确的东西,请尽一切努力让我知道,以便我们能够真正了解当前实施颠覆的能力和局限性。 更新: 根据Subversion文档,在使用 --reintegrate option 该Subversion应该能够正确地重新整合在分支中完成的工作,其方式应该考虑到可能已经完成的任何刷新合并,以将基本更改引入分支。当然,这在技术上与重新平衡有点不同,但我认为它在用法上足够相似,可以称为重新平衡。现在的主要问题是——重新整合选项是否在从基础的变更被以樱桃色的方式合并到主干中时有效,而不是从基础+下一个到头部的所有内容都被合并。 更新: 看来 cherry picking should be supported 以及使用SVN合并时 --重新整合 1.5及以上版本的选项。按照这些说明,您应该可以重新集成,而不会由于重新引入而导致未经处理的冲突,请重新调整变更修订。 欲了解更多信息,请阅读标题为 Keeping a Branch in Sync . |
3
0
也许我这里遗漏了一些东西,但听起来最简单的选择是删除主干,然后通过从新的发布分支分支中分支来重新创建主干。 |
4
0
理论上,你可以做一个“合并两个不同的树”,从树干的头到树枝的头。这个 应该 避免由于重新集成而产生任何奇怪的冲突。 |
Eric · pip安装-e svn+ssh不接受用户 6 年前 |
Anu699 · 在git中管理多个项目的最佳方式是什么?[已关闭] 6 年前 |
Dipu H · Viewvc未扩展关键字 6 年前 |
NealWalters · SVNLook-存储库格式-语法不正确 6 年前 |
m-mas · 尝试与svn重新同步trac时出错 6 年前 |
Wombattle · 通过命令行在SVN中保留时间戳 6 年前 |