首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > CVS SVN >

SVN版本归拢(merge)原理与操作指南

2012-08-26 
SVN版本合并(merge)原理与操作指南?SVN的合并操作其实是一系列操作的组合:将主干或某个分支上的一组修订(

SVN版本合并(merge)原理与操作指南

?

    SVN的合并操作其实是一系列操作的组合:将主干或某个分支上的一组修订(即合并的源头)应用到另一个分支或主干(即合并的目标)的working copy(本地工作拷贝);简单说,合并包括三要素——源头、目标、目标的working copy;如果出现冲突(conflict),需手工解决冲突;最后提交,提交时还要在SVN备注中标明这是一次合并,如merge -r 5645:5650 svn://10.191.17.67/p17_ii/development/sourcecode/Branchs/P17-II/2011-03-17 发布前又有小改动;为何会出现冲突,如何解决:源不仅是个url,还包括一个修订范围,例如前面红字示例中的-r 5645:5660;假设源头包含5646、5648、5650三个修订版,working copy的当前修订版是5649;那么合并时SVN实际进行的操作是:diff 5646 5648,然后apply到working copy;diff 5648 5650,然后apply到working copy;这个过程中,svn也会分别diff 5646 5649,diff 5648 5649,如果这两个diff任何一个与上文的两个diff中的任何一个恰好改了同一行代码,则出现冲突,相应的文件中会用标记分别标明这两种diff差异,同时会生产3个临时文件,分别是.working、.left_r5646、.right_r5650;一般选择手工解决冲突,但如果很对,也可以直接保留.right_r5650作为最终结果,更多内容,详见svnbook。

?

热点排行