- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SVN分支及合并使用文档
SVN使用文档
1.版本的分支与合并
版本的分支和合并,是版本控制的核心功能。
(1)版本分支与合并的用途
比如,软件通过版本的分支,将项目分配给多人做分工开发,通过版本合并,将这些分工实现的代码合并到新的版本中;或者,修改代码bug的时候,可以先打出一个版本分支,保留出现bug的版本,比如分支版本名称为pre_fix_bug_2201,这里2201表示bug的代码,然后针对这个分支版本构成为pre_fix_bug_2201,这里2201表示bug的代号,然后针对这个分支做修改fix这个bug,再将修改后的内容提交到一个新的分支版本,比如post_fix_bug_2201,再到适当时候将这个分支合并到代码的主干中去。
(2)SVN版本分支与合并的基本原理
首先是版本分支,实际上是将当前版本“copy”到分支上,非常类似windows下,将某个目录的快捷方式复制到其他路径。这种copy,可以说是轻量级copy或者廉价copy,不是复制版本的内容,而是做一个内部的引用。这样的copy很快,对服务器也没有空间上的开销。
版本的合并,是svn开发中的难点,当做版本合并的时候,服务器会试图只能的合并同一个文件的不同版本,可能会带来版本冲突,这需要操作者做手工的处理,消除版本冲突。合理分工的项目应该可以通过管理手段尽量避免这种情况。
下面演示版本分支。首先项目文档应该全部提交,然后,选择
然后填写url,一般都是在tags/目录下:
然后默认选项,next即可,然后选择finish按钮。在svn的目录下便可看到这个名为yanshi_demo_1.0的项目。
打分支,实际上就是建立了一个项目的轻量级copy。
如何从版本的一个分支切换到另一个分支,这也是很重要,他能帮助你轻松的在不同的项目版本中自动切换,而不必在MyEclipse里维持多个项目。
选择要切换的项目版本路径,或者直接输入即可。
然后点击ok,项目即可且换到这个版本下了。
在分支上做了改动,并且已经提交,那么可以将这个版本合并到主干(trunk)代码中,让主干也拥有最新的代码。首先切换到主干上,再进行合并。
选择需要合并的源,比如从tags上面的一个版本,合并到主干代码中。
之后需要设置一些合并的特性,这里默认设置即可。
执行完毕后,会有一个合并报告,可见没有出现冲突情况。
这时候看源代码,可以发现有改动,这些改动就是合并过来的代码。
改动如果没有问题,就可以提交,这样就完成了一次版本的合并工作。
冲突解决
冲突
当团队协同工作的时候,多人同时操作一个文件。当有人操作完成后,将该文件提交到SVN上。这样,其他人的本地文件与SVN上的文件版本不一致。当另一人操作完成后,提交该文件时,就会出现冲突
对于每一个冲突的文件,Subversion放置三个额外的未版本化的文件到你的工作拷贝:
filename.mine 更新前的文件,最新更改的内容。
filename.rOLDREV 更新操作以前的BASE版本文件,在上次更新之后未作更改的版本。
filename.rNEWREV 服务器的版本,对应版本库的HEAD版本。
(这里OLDREV是本地.svn目录中的修订版本号,NEWREV是版本库中HEAD的版本号。)
编辑冲突
显示本地的版本和服务器上版本的差别
“手动”合并冲突文本(检查和修改文件中的冲突标志)--需要团队成员交流。如果希望取消自己的修改,直接还原得到的便是svn上的最新版本。
☆如何避免冲突
养成良好的习惯,在修改文件之前,先进行一次update操作
当修改完成后,及时commit,不要在本地停留时间过长;
在多人协作时,尽量修改自己撰写的部分,不要修改其他部分;
多人协作时,增加交流;
出现冲突很正常,可以通过前面的方法解决,不要相互覆盖。
(3)本地下的svn分支与合并
下面演示本地下版本分支。同上面一样,首先项目文档应该全部提交,然后,选择
然后填写url,一般都是在tags/目录下:注意目录下中文有可能显示编码形式
然后默认选项,点击ok即可。
同样如何从版本的一个分支切换到另一个分支,这也是很重要,他能帮助你轻松的在不同的项目版本中自动切换,而不必下载多个项目。
然后点击ok,项目即可且换到这个版本下了。
在分支上做了改动,并且已经提交,那么可以将这个版本合并到主干(trunk)代码中,让主干也拥有最新的代码。首先切换到主干上,再进行合并。
选择需要合并的源,比如从tags上面的一个版本,合并到主干代码中。
选择需要合并的源,比如从tags上面的一个版本,合并到主干代码中。
之后需要设置一些合并的特性,这里默认设置即可。
执行完毕后,如果没问题会出现如下
如果有冲突或者其他状况的话
点击edit conflict(编辑冲突
您可能关注的文档
- R第3章3:陆地卫星与海洋卫星.ppt
- RTK使用手册.ppt
- s5第五章--数字滤波器基本结构3.ppt
- QD系列稠油降粘剂研制及性能评价2013.01.14.ppt
- s7第七章--有限冲激响应滤波器设计3.ppt
- SAP人力资源系统架构与经验分享.pptx
- S002铁路建设及发展.ppt
- SEO优化最小单位是单个页面.pptx
- seo站内优化及站外优化简介.pptx
- SEO及站点推广-李嘉婷.ppt
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)