假设一个项目仓库地址 http://svn.example.com/repos/calc
calc 项目有一个标准目录
trunk/
branches/
tags/
分支(branch)
创建分支
svn copy 命令
$ svn copy http://svn.example.com/repos/calc/trunk \
http://svn.example.com/repos/calc/branches/my-calc-branch \
-m "Creating a branch of /calc/trunk."
Committed revision 341.
$
可以使用插入符号 ^ 省略完整路径,进入工作副本,即 calc 副本目录,不一定是根目录,只要在副本里面,则上面的路径可简化为
$ svn copy ^/trunk ^/branches/my-calc-branch -m "Creating a branch of /calc/trunk."
在 windows 中,^ 需要转义,使用双引号或 ^^
如 ^^/trunk 或 "^/trunk"
执行完 svn copy 后也会自动 commit 一次,此时工作副本不会产生分支,需要进行 update 操作。
合并
svn merge 命令
合并前最好 update 一下。
从主干合并到分支,假设处于分支副本,则
$ pwd
/home/user/my-calc-branch
$ svn merge ^/calc/trunk
从分支合并到主干,类似
$ pwd
/home/user/trunk
$ svn merge ^/branches/my-calc-branch
合并可以指定合并的版本范围,如 $ svn merge ^/trunk -r399:HEAD 合并 r399 至最新版本范围的变动。
想知道更详细的信息不要忘记 svn help
本文介绍了如何在SVN中进行分支与合并操作。首先,通过`svn branch`命令创建分支,然后在Windows环境下使用命令创建分支时的注意事项。接着,详细讲述了如何使用`svn merge`进行合并操作,包括从主干合并到分支和从分支合并到主干,并提到了指定版本范围的合并。最后,建议在合并前更新,并提醒读者查阅官方文档获取更多细节。
2688

被折叠的 条评论
为什么被折叠?



