TortoiseSVN合并分支到主干

时间:2013-08-27 22:24:54

标签: svn version-control merge tortoisesvn

我知道这已被问过好几次,所以我为再次询问而道歉,但我只是想确定我理解不同合并之间的区别。

我是这个项目的唯一开发人员,所以我并不担心过度编写其他人的工作。

我创建了这个项目的一个分支,因为我即将添加一些新功能,如果我需要修复当前代码中的任何错误,我不想处理半成品代码。因此trunk包含'稳定'版本,分支基本上是alpha / beta版本。

在我有机会真正开始这些变化之前,我最终修复了几个错误并将它们提交到分支机构。我想将分支合并回主干以提交这些修复,然后我可以开始在分支上进行更改。

当我进入TortoiseSVN并选择合并时,我有两个选择: 合并一系列修订或 合并两棵不同的树

当我对分支或主干进行修改并希望将这些更改移植到不同的分支时,第一个说它是

第二个说当我想将两个不同分支的差异合并到我的工作副本中时。

当我尝试第一个选项时,从我选择的URL将选择我的分支和所有修订。单击下一步,当我单击测试时,我会对已移动/删除/添加的某些文件产生树冲突。

当我使用头部修订使用第二个选项(使用测试合并)尝试相同的事情时,它似乎工作。哪种方法正确?或者他们都不正确我想做什么?

3 个答案:

答案 0 :(得分:29)

在你的情况下,我认为你不需要合并两个不同的树,因为你的 trunk 分支有关系,所以这个不是你需要的。

重新整合分支就是您需要将分支的更改带到 trunk 所需的内容。

您可以使用合并一系列修订进行从 trunk 分支的合并(更新到最新的稳定版本),还可以用于合并分支 trunk (我主要使用此选项)。

也许this SO-Question也可以帮助您,here是该主题的“标准文献”。

<强>更新

(乌龟)合并选项:

enter image description here

更新II:

(Tortoise)当前版本中的Merge-Options:

enter image description here

“合并一系列修订”通常用于“分支到主干”-Merge。

答案 1 :(得分:9)

新版本的陆龟svn删除了重新整合分支。相反,合并的一系列修订正在处理这个问题。

查看讨论Tortoisesvn Subversion 1.8 - merge - no more reintegrate a branch option

答案 2 :(得分:1)

在合并对话框下,有一个“合并(旧样式)”选项

Old style Reintegration