要进行开发,代码的管理是必不可少的,下面就简要说说SVN分支的创建与合并
首先需要在主干上建立一个分支,假设主干在http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2下,在命令提示符中输入命令如下:
svn cp http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/trunk/ http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/ branches/ 071114_membermodifybug_wenyang_DEV –m “create a branch”
这条命令的作用是在http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/ branches下创建一个名为071114_membermodifybug_wenyang_DEV的分支,分支的内容是来自 http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/trunk,创建记录的信息是 “create a branch”,如果在命令后不写“–m “create a branch””的话,则会弹出一个记事本供填写信息,填写完成,保存并关闭记事本,创建分支的命令才会继续执行。
创建好分支之后,让命令提示符路径为d盘,输入命令svn co http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/ branches/ 071114_membermodifybug_wenyang_DEV,这样,就可以取出名为 071114_membermodifybug_wenyang_DEV的分支到d盘了。
改动了代码之后,在命令提示符下进入d盘071114_membermodifybug_wenyang_DEV目录下,输入命令svn commit –m “update date”,这样就会讲代码提交到SVN服务器上的分支里,同时添加“update date”这个信息。
当开发完成之后,就需要向主干提交了。首先用svn co命令将主干或者开发分支取出到本地。在命令提示符下进入取出的主干或者开发分支的目录,输入命令:svn log --stop-on-copy -q http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/ branches/ 071114_membermodifybug_wenyang_DEV。这个命令的作用是检查需要合并的分支的历史,输出如下所示:
------------------------------------------------------------------------
r16206 | yang.weny | 2007-09-28 16:31:27 +0800 (Fri, 28 Sep 2007)
------------------------------------------------------------------------
r16205 | yang.weny | 2007-09-28 16:30:55 +0800 (Fri, 28 Sep 2007)
------------------------------------------------------------------------
这样的输出说明创建时的版本是16205,我们就需要从这个版本号来进行合并。接着输入命令:svn merge -r 16205:HEAD http://svn.alibaba-inc.com/repos/ali_cn/olps/exodus2/ branches/ 071114_membermodifybug_wenyang_DEV。这个命令的用处是将 071114_membermodifybug_wenyang_DEV分支与取出的主干或者开发分支的差别拷贝到取出的主干或者开发分支的路径。完成之后执行命令:svn st。这个命令的用处是检查冲突,这个命令的输出会是改变的文件,在文件名前输出的会是文件的状态。如果状态没有c,说明没有出现冲突。没有冲突的话,输入svn commit命令就可以完成提交了。
转自:http://hi.baidu.com/chenwei6111/blog/item/8d4bdfecd4eca72363d09ffd.html