2014-10-06 97 views
2

我正在使用SVN 1.6和乌龟客户端。我是新来的。svn - 合并树干更改为分支,然后将分支更改回干线

我有一个主要生产代码保存的主干。 我创建了一个分支“devBranch”,从“主干”

对于过去一个月左右的时间我没有在“Dev分支”签到而许多签到已在“树干”做

我的发展是现在完成,并且我想从我分支后的所有“主干”更改中测试我的版本。

我不想把我的变化,在“树干”,直到我已经完全与

一旦我测试合并后的版本和所有的测试都完成的“主干”中所做的更改测试我的代码,我然后希望将我所有的更改放入“主干”中进行生产QA并发布。

我该如何一步一步做下去。

回答

1

这是在免费提供和非常可读的“SVN书”中详细介绍;具体而言,the section on "reintegrating a branch"

总之,你有三个阶段:

  • 创建从树干上某点的分支,并开始进行更改。
  • 由于这是一个“功能”分支,并且被认为是“前面的”主干(我使用助记符“功能是未来”来提醒人们这个;另一方面,“释放分支”是后面中继,并以另一种方式合并),定期将发生在干线上的所有事情合并到分支上。您做这件事的频率越高,您准备重新融入时就需要花更少的时间来整理冲突。
  • 一旦你测试你的变化 - 包括它们与变化从主干合并“前进”的互动方式,可以使用特殊的“复兴合并”命令来合并从干线您的分支。由于分支已经包含了在trunk上发生的所有事情(如果没有,SVN会中止合并),这基本上会覆盖树枝和分支。您应该删除该分支,因为此命令不能运行两次。

注意,在SVN的较新版本中,最后一步是正常的“合并”命令的自动模式中,并且可以被重复多次,因为用于存储和解释合并信息的算法已被提高。

上面链接的指南是用基本的SVN工具(即命令行界面)编写的。 TortoiseSVN也提供相同的功能,as documented here。基本上是:

  • 要打开合并向导,在您的目标文件夹的结账单击鼠标右键,然后在进入盒子“从合并”向导的第二页上。它需要完整的网址;最简单的方法是右键单击源文件夹的签出,选择属性,然后查看Subversion选项卡的顶部。
  • 正常合并(中继到特征分支)是第一个选项,“合并一系列修订”。
  • 重新合并合并是第三种选择。
  • 大部分选项都可以保持默认状态。
+0

这是基于命令的。试图找到它如何与基于Tortois GUI的客户端做到这一点。 – bsobaid 2014-10-07 14:04:54

+0

@bsobaid该过程完全相同,但不是键入“svn merge”,而是右键单击目标目录并单击“合并”。然后您将获得一个向导用户界面,引导您完成合并选项。见http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.html – IMSoP 2014-10-07 15:25:13

相关问题