sc_*_*ray 2 svn version-control merge intellij-idea
我对其中一个分支做了一大堆修改.现在我试图将这些更改与主干合并.为了做到这一点,我在我的机器上创建了两个工作文件夹,名为BRANCH和TRUNK.我在BRANCH目录中创建了一个svn co分支,在TRUNK文件夹中创建了一个svn co的trunk.退房完成后,我继续打开了我在分支机构所做的所有签到的颠覆历史.一旦我获得了所有签到的版本号,我就进入了我的TRUNK文件夹并发出以下命令:
svn merge --dry-run -r1xx0:1xx1 svn+ssh://pathtomybranch/
Run Code Online (Sandbox Code Playgroud)
有趣的是,上面的命令执行没有任何输出,这实际上表明我的分支和我的版本没有任何差异.这是不可能的,因为我尝试合并的版本的文件内容不同.
有人对这里可能出现的问题有一些想法吗?
谢谢
您首先必须使用自创建分支以来对trunk进行的所有更改来更新分支(如果自创建分支后未对主干进行任何更改,则可以跳过此步骤):
cd branch
svn merge url://of/trunk
Run Code Online (Sandbox Code Playgroud)
然后你可以选择两种相同的(?)方法:
1)使用reintegrate分支:
cd trunk
svn merge --reintegrate url://of/branch
Run Code Online (Sandbox Code Playgroud)
或2)使用两棵树之间的合并:
cd trunk
svn merge url://of/trunk url://of/branch
Run Code Online (Sandbox Code Playgroud)
方法2)计算两个树"trunk"和"branch"之间的差异,并将它们合并回当前目录(即trunk).
方法1)只是方法2)的语法糖.
请注意,对于这两种方法都不必指定修订号.所有最新版本的SVN都会自动为您处理.
| 归档时间: |
|
| 查看次数: |
7343 次 |
| 最近记录: |