当前位置:  开发笔记 > 开发工具 > 正文

在Subversion中将trunk合并到分支

如何解决《在Subversion中将trunk合并到分支》经验,为你挑选了3个好方法。

我正在使用Subversion 1.4.6,我现在无法升级到1.5版.

情况:

    主干有很多结构变化(主要是移动文件).

    我有一个最近从主干合并的分支,但在重大变化之前.

将主干合并到分支的最佳方法是什么?

我的想法:

    首先,通过将分支中的已修改文件合并到主干,将分支小心地合并到主干.

    将主干复制到分支.在不丢失分支历史的情况下,最好的方法是什么?我应该弃用分支并创建一个新分支吗?


好吧,看起来我没有给SVN足够的信用.毕竟它足够聪明.我只是被"D"和"A"的输出所拖延,但在后台它做了一个动作.



1> Stefan..:

是否存在阻止您自上次合并以来合并主干上的所有修订的内容?

svn merge -rLastRevisionMergedFromTrunkToBranch:HEAD url/of/trunk path/to/branch/wc

应该工作得很好.至少如果要将trunk上的所有更改合并到您的分支.


当我干它运行时,那里有很多"D"和"A"的许多文件,因为文件在主干中移动.我的问题是SVN是否记得这种情况下文件的历史记录.
这里有一个很好的指南:http://stereointeractive.com/blog/2009/02/17/svn-merge-trunk-changes-to-your-branch/

2> 小智..:

通过在工作副本目录中运行此命令,可以找到从主干到分支合并的最新修订:

svn log -v --stop-on-copy


这只是在创建分支时停止日志; 它没有显示在该点之后发生的任何合并.
因为,有了@moswald的一点点警告,这可能非常有用.我没有看到问题.我通常没有长寿的分支(最多一周),所以我通常只在重新整合之前从主干拉出来.

3> Markku..:

以"老式"方式指定要合并的修订范围.使用1.5+,您可以使用:

svn merge HEAD url/of/trunk path/to/branch/wc


你还要说这么多吗?在工作副本中'svn merge/url/of/trunk'有什么问题?
我正在使用1.6.11,它让我进入一个范围.
@Solo HEAD确实要求您指定修订号,但不再需要使用HEAD.正如GreenAsJade所提到的,"svn merge/url/of/trunk path/to/branch/wc"对我有用.
推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有