SVN一种集中式文件版本肢羡拆管理系统,历枣对于开发人员来讲,应该是有必要掌握的工具,当然还有其他比如CVS,VSS等其他工具。
一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,派镇它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。
注意事项:
SVN服务器既具有CVS所具有数据储存的优点,像是信息资源存储后会形成资源树结构,便于存储的同时,数据一般不会丢失,同时又拥有自己的特色。SVN是通过关系数据库及二进制的存储方式,同时解决了既往不能同时读写同一文件等问题,同时增添了自己特有的“零或一”原则。
以上内容参考:百度百科-版本控制
以上内容参考:百度百科-SVN
安装好SVN管理软件的客户端和服务端后,在服务端建立一个仓迅隐库目录(也就是建立一个文件夹)然后在本地的客户端上亩旅厅登录SVN地址,使用checkout检出这个目录到本地指定的位置(路径)
以后把你的本地文档放到这个检出的路径里,就可以方便的上传,更新,下载等管理这些本地文档了。和管理镇棚代码是一个道理。
1、可以 *** 作档缓。
2、前提你是要熟悉SVN的分支的原理。只下载主线目录(通过TSVN的主线与分支的切换,合并到本地,合并源选对方以及提交选择路径实现),
3、后果的话,因为你是N个分支->主线先合并,主线上拥有了所有分支的特性,然后再主线把其他分支的特性合并到某个分支。相当于所有的分支都是从新的版本出发的。SVN *** 作上和软件开发上问题不大,主要是这样做不方便分支的管理。
4、第一种SVN开发方式:集中主线开发,分支辅助实现(软件变体、交迭、缺陷修复、隔离试探、多层集成、第三方源码),然后合并到主线,然后关掉分支。
5、你这种SVN开发方式是第二种,trunk上实现 集成、构建、测试和发布,分支用来开发。最大的问培世题也就是你说的冲突,因为分支本身是隔离的,分支内部能交流,分支之间无法交流,无法共享代码,容易对项目的理解产生分歧导致无法合并,另外权限控制也是个很严重的问题配蠢肢,可能分支的权限会放的比较开,有些人会修改其他人负责的代码。合并 *** 作的频率非常高,也容易出现合并的逻辑出问题或者忘记了合并,导致主线构建不成功。
6、如果你用第二种方式,做法应该是-:分支开发->分支合并到主线->主线合并到分支->构建->测试->发布->关闭原分支->新的分支 .....。也就是说 只要你发布了版本就应该重新开分支。这样的后果就是分支无法进行下一个版本的新功能的开发。你原有的做法会导致版本在需要发布的时候因为模块进度不同 导致选择需要合并的文件时混乱。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)