首先说下为何咱们须要用到分支-合并。好比项目demo下有两个小组,svn下有一个trunk版。因为客户需求忽然变化,致使项目须要作较大改动,此时项目组决定由小组1继续完成原来正进行到一半的工做【某个模块】,小组2进行新需求的开发。那么此时,咱们就能够为小组2创建一个分支,分支其实就是trunk版【主干线】的一个copy版,不过度支也是具备版本控制功能的,并且是和主干线相互独立的,固然,到最后咱们能够经过【合并】功能,将分支合并到trunk上来,从而最后合并为一个项目。
下面是在eclipse下使用subeclipse插件详细使用过程:
首先创建一个工程,名字叫Facebook
1.创建分支,为新的分支指定访问URL:Facebook3[注释不要忘了]
2.创建好分以后,使用“切换”功能切换到分支下进行开发。
我新建了一个FB3.html的文件并在分支下进行提交。
3.切换回trunk版【即URL为Facebook的版本】
你会发现trunk版里并无出现咱们刚刚提交的FB3.html,由于FB3.html是属于分支的,接下来咱们要作的就是“合并”,经过合并,咱们能够将分支下进行的更改合并到trunk版里。
下面是合并的主要配置:
起始路径:trunk版的路径【若须要把trunk版的改动合并到分支则相反】
目标路径:从哪里获取改动【这里是分支路径】
你能够使用指定的版本号,这里采用最新修订版。
4.点击合并,你会发现trunk版下新增了一个文件FB3.html
这样咱们就将分支下所作的改动合并到了trunk版里。
值得注意的是:
1.在创建分支的时候最好添加注释。
2.进行合并前最好保证两个版本都是干净的【即没有未提交或者冲突的文件存在】
3.合并时的目标路径:须要把谁的改动合并到其余版本就填谁的URL。
整个过程的SVN命令行输出以下:
Xml代码 javascript
但愿本文能有所帮助。
其余参考资料:
http://www.iteye.com/wiki/subclipse/1626-subclipse-getting-started-guide-and-reference-c
===========================关于合并==========================
我在合并的时候发现,合并后文件被直接覆盖掉了,而没有出现本该出现的【冲突】,后来通过仔细研究发现,是操做问题。
假设我原来的项目是placii,创建了一个分支是placiiStore.如今须要将分支placiiStore合并到主干线上。那配置应该如图所示
1.【起始路径】:这里须要填分支的路径。
2.第一个修订号:创建分支时的版本号。在创建分支时候记录下svn的console
个人是Xml代码 html
3.目标路径:这里使用起始路径。
4.目标版本号:使用最新版即 HEAD.
点击合并,若是有人在主干线版本上作了更改,而你再分支上也对这个文件做了更改,将会产生冲突。而后手动把冲突的代码合并一下,右键-标记为解决,这就达到咱们的目的了。 java
9
顶react
0
踩ios
MyEclipse freemarker 插件 plugins (附件 ... | eclipse jvm terminated. exit code 1 解决 ...eclipse
参考知识库jvm
深度学习知识库882 关注 | 180 收录ide
React Native知识库832 关注 | 426 收录svn
iOS知识库765 关注 | 1143 收录
直播技术知识库2025 关注 | 851 收录
评论
9 楼 xiboliyalang 2016-09-21
8 楼 77321660 2015-11-30
谢谢,很详细的教程,受用。
7 楼 rovegaby 2013-12-17
博主 你好 我用你的方法 创建分支 跟合并 分支 都报一个错误:
http://hi.baidu.com/i_ccboy/item/c90aae8495ddc3ded1f8cda7
这里的第二个问题 , 有没有办法 解决。还有 我这个svn 插件跟你的同样,是否是插件的问题。
6 楼 fanjf 2011-12-19
不错,受用
5 楼 energykey 2011-07-11
4 楼 beautyOfProgram 2011-07-11
beautyOfProgram 写道
我实际操做结果是:操做的起始路径 和目标路径与你上面文中写的相反
我测试结果是: 起始路径应该为改动的源,如文中在分支修改,那么此处应该为分支路径
目标路径为 要合并的trunk
个人svn命令:把trunk 合并到分支
merge --depth=infinity http://192.168.1.18/repos/hxia/trunk/VMS@HEAD http://192.168.1.18/repos/hxia/branches/VMS_SQLSERVER@HEAD E:/myeclipseWorkspace/VMS
仔细检查一遍,发现时我错了,文中的教程是正确的,请原谅。
3 楼 beautyOfProgram 2011-07-11
我实际操做结果是:操做的起始路径 和目标路径与你上面文中写的相反
我测试结果是: 起始路径应该为改动的源,如文中在分支修改,那么此处应该为分支路径
目标路径为 要合并的trunk
个人svn命令:把trunk 合并到分支
merge --depth=infinity http://192.168.1.18/repos/hxia/trunk/VMS@HEAD http://192.168.1.18/repos/hxia/branches/VMS_SQLSERVER@HEAD E:/myeclipseWorkspace/VMS