SVN merge的主干,分支的相互合并操作

 

SVN merge的主干,分支的相互合并操作

本文只研究了 在本地如何进行主干,分支的相互合并 的操作:从主干到分支,从分支到主干。

本地客户端工具是tortoisesvn

 

 

 

测试用例。

1.本地添加test文件夹

在test文件夹下分别建立trunk,branches两个文件夹,建立好以后,提交到svn服务器端

此处的test文件夹的意义相当于一个单独的工程项目,

trunk用来存储主干代码文件,branches用来存储分支的代码文件,

2.在trunk文件夹下建立 Project1文件夹

然后随便新建一个txt文件,111.txt,里面写上内容11111111111,然后提交到svn服务器端。

此处project1,相当于工程test的主干源代码

 

3.新建分支

 

从trunk主干建立分支到branches, 第一次从主干创建分支的原理,就是把主干的代码复制一份 到分支文件夹。

在trunk下,对project1文件夹,右键菜单,-- branches/Tag

弹出面板,对To Path文件路径进行修改,指定到branches文件夹中,点击确定就可以。

 

 

合并成功以后。分支目前只是建立在svn的服务器端,本地还没有更新,对branches文件夹右键菜单 Update,就可以更新到分支代码

4.合并分支 到主干

 

对分支下的project1文件夹下的内容,进行修改,然后把分支的修改合并到主干,

对分支下的111.txt,随便输入新的内容,然后再新建一个222.txt文件夹,随便输入内容。

然后commit到svn服务器端

 

如果合并成功,那么branches下的project1的内容会全部合并到trunk文件夹下的project1中。

 

回到trunk文件夹中,对project1右键菜单,merge

 

在merge type中,选择第二个,第二个类型的功能更全面,可以合并任意两个分支

 

选择From版本, To版本

表示从trunk下的project1代码版本, 到branches下project1的版本的变化,都要更新到本地工作副本,trunk,project1中

 

然后next 一直到执行。执行完毕后,会发现trunk下,会多了222.txt,而且因为分支中111.txt会合并到主干111.txt内容,如果有冲突解决一下就行。然后commit

 

 

5.合并主干到分支。

 

这个场景是,如果主干做了很多更新,可能需要及时更新到分支上去。

在主干中建立新文件333.txt,随便输入内容,然后commit

 

回到branches文件夹中,对project1,右键菜单,merge,仍然选择第一个选项

一直到选择版本这个地方

注意其中From,To的版本路径,正好和从分支到主干是相反的。

执行完毕后,就会发现branches的project1多了333.txt文件,这样就完成了主干到分支的合并

 

 //////////////////////////////////

另外一个值得参考的好文章

http://www.docin.com/p-542804194.html?qq-pf-to=pcqq.discussion

 

posted @ 2013-11-06 14:51  音乐啤酒  阅读(21732)  评论(10编辑  收藏  举报