svn - 如何将分支合并到主干?

标签 svn version-control merge

我在 SVN merge 方面遇到了一个特殊问题。我想从开发分支合并到主干。 我们有多个开发分支同时切断了主干。

我使用以下命令将其中一个分支合并到主干:

svn merge trunk branch_1

我看到不属于该分支的更改正在合并到主干中。 我做错了什么?

SVN 版本:

Subversion command-line client, version 1.6.16-SlikSvn-tag-1.6.16@1076804-WIN32.

最佳答案

您的 svn merge 语法错误。

您想要 checkout trunk 的工作副本,然后使用 svn merge --reintegrate 选项:

$ pwd
/home/user/project-trunk

$ svn update  # (make sure the working copy is up to date)
At revision <N>.

$ svn merge --reintegrate ^/project/branches/branch_1
--- Merging differences between repository URLs into '.':
U    foo.c
U    bar.c
 U   .

$ # build, test, verify, ...

$ svn commit -m "Merge branch_1 back into trunk!"
Sending        .
Sending        foo.c
Sending        bar.c
Transmitting file data ..
Committed revision <N+1>.

请参阅SVN book chapter on merging了解更多详情。

<小时/>

请注意,在撰写本文时,这是正确的答案(并且已被接受),但事情已经发生了变化。参见topek的答案,以及http://subversion.apache.org/docs/release-notes/1.8.html#auto-reintegrate

关于svn - 如何将分支合并到主干?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7563693/

相关文章:

svn - SVN同步与更新到头部(子片段)

git svn clone 结果为空目录

linux - 错误号 13 - 远程访问 svn 且 dav_svn 失败

svn - 乌龟SVN - "revert changes from this revision"与 "revert to this revision"

version-control - Emacs:有没有办法从 diff 生成骨架 ChangeLog?

join - 将制表符分隔的文本文件合并到单个文件中

svn - 如何启用 svn merge 以考虑外部更改?

mysql - 通过 Jenkins 作业验证提交给 Subversion 的 SQL

arrays - 将两个文件中的对象数组与特定键 1.4 下的 jq 结合起来

java - 递归归并排序Java程序