目 录CONTENT

文章目录

十二、SVN 分支

云少
2022-06-02 / 0 评论 / 0 点赞 / 144 阅读 / 613 字
温馨提示:
本文最后更新于 2022-06-02,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
广告 广告

十二、SVN 分支

SVN 分支

Branch 选项会给开发者创建出另外一条线路。当有人希望开发进程分开成两条不同的线路时,这个选项会非常有用。我们先假设你已经发布了一个产品的 1.0 版本,你可能想创建一个新的分支,这样就可以不干扰到 1.0 版本的bug修复的同时,又可以开发2.0版本。

在这一节,我们将看到如何创建,穿过和合并分支。Jerry 因为代码冲突的事情不开心,所以他决定创建一个新的私有分支。

[jerry@CentOS project_repo]$ ls
[jerry@CentOS project_repo]$ svn copy trunk branches/jerry_branch
[jerry@CentOS project_repo]$ svn status
[jerry@CentOS project_repo]$ svn commit -m "Jerry's private branch"

现在 Jerry 在自己的分支下开始工作。他给序列添加了 sort 选项。Jerry 修改后的代码如下:

[jerry@CentOS project_repo]$ cd branches/jerry_branch/

[jerry@CentOS jerry_branch]$ cat array.c 

Jerry 编译并且测试了他的代码,准备提交他的更改。

[jerry@CentOS jerry_branch]$ make array
[jerry@CentOS jerry_branch]$ ./array 
[jerry@CentOS jerry_branch]$ svn status
[jerry@CentOS jerry_branch]$ svn commit -m "Added sort operation"

同时,越过主干,Tom 决定实现 search 选项。Tom 添加了 search 选项而添加代码,他的代码如下:

[tom@CentOS trunk]$ svn diff
[tom@CentOS trunk]$ svn status
[tom@CentOS trunk]$ svn commit -m "Added search operation"

但是 Tom 好奇 Jerry 在他自己的私有分支中干了什么:

[tom@CentOS trunk]$ cd ../branches/
[tom@CentOS branches]$ svn up
[tom@CentOS branches]$ svn log

通过查看 Subversion 的 log 信息,Tom 发现 Jerry 依赖 ‘sort’ 选项。Tom 决定增添用折半查找,期望数据总是根据种类进行分类。但是如果用户提供的数据是没有进行分类呢?在那种情况下,折半查找将会失效。所以他决定接着 Jerry 的代码,在搜索选项前先进性分类。所以他告诉 Subversion 合并 Jerry 的分支到主干中去。

[tom@CentOS trunk]$ pwd

[tom@CentOS trunk]$ svn merge ../branches/jerry_branch/

在融合后,array.c 会看上去是这个样子:

[tom@CentOS trunk]$ cat array.c

经过编译和测试后,Tom 提交了他的更改到仓库。

[tom@CentOS trunk]$ make array
[tom@CentOS trunk]$ ./array 
[tom@CentOS trunk]$ svn commit -m "Merge changes from Jerry's code"
0
广告 广告

评论区