svn分支合并

上传人:mg****85 文档编号:34159135 上传时间:2018-02-21 格式:DOCX 页数:2 大小:17.17KB
返回 下载 相关 举报
svn分支合并_第1页
第1页 / 共2页
svn分支合并_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《svn分支合并》由会员分享,可在线阅读,更多相关《svn分支合并(2页珍藏版)》请在金锄头文库上搜索。

1、1.创建分支的意义创 建分支的意义,比如我们在一个基础平台上进行开发,每个技术小组负责一个子项目,而基础平台也是有可能会继续更改的,这个时候,如果不创建分支,子项目之 间会相互影响,影响最大的就是后期的测试和版本发布,子项目 A已经结束,但测试却受到正在进行的子项目 B 的影响,测试通不过,就别说版本发布了。所以,我 们需要从目前的项目(主干 trunk)中创建分支(branch),隔离子项目间的相互影响。2.svn 创建分支原理在 svn 中,创建分支,实际上就是一个版本拷贝( 对应 copy to.注意:绝不是简单在客户端上 copy 一个目录,而是 svn 仓库中 copy,文件版本号会

2、增加。),两边做任何修改发生的版本变化,是一套机制。 举例:目前主干版本是100,分支版本是 101,主干中增加一个文件,版本为 102,分支中再增加一个文件,版本就为 103 了。两边的版本号是一套,不会 重复。3.svn 创建分支的方法TortoiseSVN:右键点击工程目录-TortoiseSVN-Branch/tag. 菜单,From WC at Url 自动为工程 svn url,比如https:/localhost:8443/svn/fbysss/prj1/trunk,to Url 填写https:/localhost:8443/svn/fbysss/prj1/branches/b

3、ranch1。点 OK 按钮,分支就创建好了。Subclipse:Team-Branch/tag.,跟上面类似.SVN 命令模式: svn copy trunk_path branch_path -m 描述举例:svn copy https:/localhost:8443/svn/fbysss/prj1/trunk https:/localhost:8443/svn/fbysss/prj1/branches/branch1 -m 第一个分支注意一点:trunk 和 branch 不能互为子目录,否则就乱套了。4.分支合并1)从分支合并到主干分支开发结束之后,往往需要合并回主干去测试、发布,但分

4、支和主干可能有很多冲突的地方,在合并时经常需要手工解决。被操作对象:主干From:主干的打出分支时的版本To:分支的 Head 版本(最新版本)怎么理解这个 From 和 To 呢?似乎跟我们的想当然不太一样:因为我们理解,把分支合并到主干,肯定是 From 分支,To 主干。怎么搞反了呢?SVN 分支与合并实际上,Svn 认为,我们要合并的,是从主干的某个版本开始,到分支的某个版本结束。两边的版本号实际上是一套系统,不会有重复。我们从TortoiseSVN Help 中也能找到证据:xhtml view plaincopy1. If you are using this method to

5、merge a feature branch back to trunk, you need to . 2. 3. In the From: field enter the full folder URL of the trunk. Thismay sound wrong, but remember that the trunk is the start point to which you want to add the branch changes. You may also click . to browse the repository. 4. 5. In the To: field

6、enter the full folder URL of the feature branch. 2)从主干合并到分支试想这样的情况:一个项目里面,要独立出来一个子项目,需要单独发布版本,用到了基础框架代码,而基础框架在主干中不断修改完善,这就需要从主干合并到分支。被操作对象:分支From:分支的第一个版本(最旧版本)To:主干的 Head 版本(最新版本)相当于从分支的第一个版本开始一直到主干最后一个版本结束合并之后,替换分支。3)从分支合并到分支有 这样的需求:一个项目中有很多分支,这些分支需要分期上线,有多个工作并行,但每一期之间不能相互影响,这就可以打出几个 tag(也是分支),从主干 copy 而来。其他主干根据排期分别合并到这些 tag 中来。比如有 prjTag1和 prjTag2,model1、model2 需要合并到 prjTag1 中,model3、model4 需要合并到 prjTag2 中。拿 prjTag1 举例:在 prjTag1 的 work copy 中,mergeFrom:主干的打出分支时的版本To:分支的 Head 版本(最新版本)注意:From 不是本 Tag 的某个版本,而是之前主干打出分支时的版本,最终Merge 到 prjTag1 的 work copy,而 prjTag1 是找不到当初打分支时的版本的。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号