使用“svn merge --reintegrate”成功地将分支合并回主干,关于在主干上删除的分支文件也被删除。这是我所期待和想要的。好的。
但是,它没有将文件添加到分支上添加的主干。虽然“svn merge --reintegrate”将添加的文件复制到主干工作目录,但它们没有添加到 svn,当然也没有提交。我没想到会这样。坏的。
如何安全地将分支合并到主干更改,包括文件删除和文件添加?
这是我所做的
my-bug-fix 分支是从主干上的最后一个正式版本创建的。这是一个单一的开发者项目,但我仍然设法弄乱了合并并破坏了构建。
在合并之前,我将分支和主干都检出到“暂存”文件夹中,以便于区分。我希望差异能够向我保证合并是我在提交之前所期望的。不幸的是,diff 不知道添加的文件尚未添加到 svn。
mkdir merge-staging
cd merge-staging
svn co https://myserver.com:8443/svn/myproject/branches/my-bug-fix/ branch
svn co https://myserver.com:8443/svn/myproject/trunk/ trunk
cd trunk
svn merge --reintegrate https://myserver.com:8443/svn/myproject/branches/my-bug-fix/
echo Perform diff between branch and trunk to verify the trunk now matches branch.
diff -r --exclude=".svn" branch/ trunk/
svn --version
svn, version 1.6.15 (r1038135)
compiled Nov 25 2010, 00:08:34
[esutton@esutton-vm-rhel merge]$ svn status trunk
X trunk/common/externals
? trunk/common/scripts/strip-dbg-sym.sh
提前感谢任何方向,-Ed