使用subversion和intellij将trunk与branch合并



我对其中一个分支做了一大堆更改。现在我正在尝试将这些更改与主干合并。为了做到这一点,我在我的机器上创建了两个名为BRANCH和TRUNK的工作文件夹。我在branch目录中做了一个svn-co-of branch,在trunk文件夹中做了svn-co-oftrunk。签出完成后,我继续打开分支上所有签入的颠覆历史。当我得到所有签入的版本号后,我进入TRUNK文件夹并发出以下命令:

 svn merge --dry-run -r1xx0:1xx1 svn+ssh://pathtomybranch/

有趣的是,上面的命令在没有任何输出的情况下执行,这基本上表明我的分支和我的版本没有任何差异。这是不可能的,因为我试图合并的版本的文件内容不同。

有人知道这里可能出了什么问题吗?

感谢

您首先必须使用创建分支以来对trunk所做的所有更改来更新分支(如果自创建分支以来没有对trunk进行任何更改,则可以跳过此步骤):

cd branch
svn merge url://of/trunk

然后你可以在两种相同的(?)方法之间进行选择:

1) 使用重新整合分支:

cd trunk
svn merge --reintegrate url://of/branch

或者2)在两个树之间使用合并:

cd trunk
svn merge url://of/trunk url://of/branch

方法2)计算两个树"trunk"one_answers"branch"之间的差异,并将它们合并回当前目录(即trunk)。

方法1)只是方法2)的语法后缀。

请注意,对于这两种方法,都不必指定修订号。SVN的所有最新版本都会自动为您处理此问题。

最新更新