在 svn生成patch与应用patch中,提供了一种把一个分支的修改合并到另一个分支的方法,需要借助一个patch文件.
下面使用merge命令可以直接实现这个功能.
先用svn info 查看一下当前目录的SVN信息, 注意Relative URL.
假设当前分支工作目录的Relative URL: ^/branches/xxxx, 要合并的源分支是my_proj, 只需要合并源分支的dir_a/dir_b目录在r100 版本修改的内容
svn merge ^/branches/my_proj/dir_a/dir_b@99 ^/branches/my_proj/dir_a/dir_b@100
svn ci . -m "merge ^/branches/my_proj/dir_a/dir_b@100"把^/branches/my_proj/dir_a/dir_b上r100的修改,合入当前工作目录并提交.
svn ci . -m " revert ^/branches/my_proj/dir_a/dir_b@100"
在当前工作目录, 回退^/branches/my_proj/dir_a/dir_b上r100的修改,提交.
回退本分支提交,跟上面类似,my_proj换成当前分支xxxx就可以了.
跟使用patch一样, merge也是合入本地工作目录的,要提交,代码才真正进入仓库.