svn 怎么创建分支,合并分支

如题所述

第1个回答  2017-01-24
你没有提到图中“局域网开发环境”的文件夹结构,关键就在这里了。我理解你遇到的问题应该是这样:软件的多个版本在同时开发或维护,但在服务器上这多个版本存放在同一个文件夹,导致发生冲突。如果是这样的话,我建议你合理使用SVN的分支功能。给你描述一下对于多版本同时开发环境下,SVN的规划吧:1、按照SVN官方建议,在版本库的根目录下先建立3个文件夹:trunk、branches、tags。2、trunk文件夹是开发主干,最新版本的开发成果都存放在这里,这里的内容是不稳定的,甚至是未经测试的,经常发生变化。3、branches是存放各分支,每当要形成一个相对稳定的测试版时,就从trunk拉出一个分支(svncopy)到branches下,比如branches下会因此形成1.0a版、1.0b版、1.0release版、1.0.1a版等多个子文件夹,然后部署测试环境就从这些文件夹中获取代码,测试时发现bug进行的修复也在这些分支文件夹中进行,与此同时主干上的开发正常进行,两边互不干扰。4、当测试完成后要正式发布时,就从这个分支下将其拉到tags下,tags下存放的就是各个版本的正式发布版,会因此形成1.0release、1.1release、1.2release等多个文件夹。5、当需要将某个测试版中的某项修复成果应用到其他版本或主干上时,就进行branches下不同分支或分支与主干之间的合并操作,这时合并可能会发生冲突,在这时进行冲突解决。6、这样的话,最新版本开发始终在主干中进行,对某个版本的测试/修复或对之前版本的维护在branches下该版本的子文件夹中进行,要发布的正式版始终从tags中获得,整个库就井井有条了。
相似回答