开分支.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
开分支

SVN中的Branches分支以及Tags标签详解与应用举例2010-07-07 03:18 P.M.1.关于SVNSVN 是Subversion的简称,在软件开发中,我们经常用于版本控制和源代码管理。我们经常使用的几个SVN工具包括:VisualSVN,这是一个Visual Studio的插件,可以便于开发者在VS中方便的执行迁入迁出的工作,这个工具是需要付费的,具体可以去 HYPERLINK /visualsvn/download/ /visualsvn/download/下载试用版。 VisualSVN Servers,这是一个搭建SVN服务器端的工具,使用这个工具还可以很轻松的创建用户和用户组并进行权限控制管理,包括了Windows验证和用户验 证的机制,还可以记录日志等,不过免费版并不包括完整的功能,但作为常用的版本控制工具是完全可以满足的,具体可以去 HYPERLINK /server/download/ /server/download/下载。也可以不通过这个工具搭建服务器端,具体可以参看之前我的一篇日志:Subversion + VisualStudio 2008实战(一)。 TortoiseSVN,这是一个可以集成到Windows资源管理器中的Shell程序,可以方便的帮助我们执行各种命令,这是一个免费的工具,在VisualSVN失效的时候,我们依然可以针对项目的文件夹和文件执行签入迁出等各种工作,下载地址: HYPERLINK /visualsvn/download/tortoisesvn/ /visualsvn/download/tortoisesvn/ 。2.关于SVN中的Branches与Tags在版本控制的系统中,我们经常需要对开发周期中的单独生命线作单独的修改,这条单独的开发生命线就可以称为Branches即分支。分支经常用于添 加新的功能以及产品发布后的bug修复等,这样可以不影响主要的产品开发线以及避免编译错误等。当我们添加的新功能完成后可以将其合并到主干中。 而Tags即标签主要用于项目开发中的里程碑,比如开发到一定阶段可以单独一个版本作为发布等,它往往代表一个可以固定的完整的版本,这根VSS中的Tag大致相同。 SVN中的Branches以及Tags经常容易混淆,因为在TortoiseSVN中创建方法是一致的,而且它们都是通过存储类似Linux中的 lunch快捷方式一样,只是创建了指向某个版本的链接,而不会真正将此版本的内容复制到分支或者标签中,这样既可以节省空间,也可以很快速的创建。 为了便于创建分支和标签,我们习惯于将Repository版本库的结构布置为:/branches,/tags,/trunk。分别代表分支,标签以及主干。 还有一点值得注意的是,SVN不推荐在创建的Tag基础上Revision,这种情况应用Branches,因为Tag一般保持不变不作任何修改。3.创建Branch分支或者Tag标签当按照推荐的结构创建的版本库,创建分支以及Tag是很容易的。 在我的SVN服务器上创建了一个版本库Test,结构如下: 在我的本地签出checkout,添加一个文件test.txt,然后提交。 加入这个时候我们需要发布一个版本的文件,同时有可能其他人会修改,但我们不能影响当前的文件,只能在其修改好后再合并,这种情况下我们创建一个分支。 这个时候我们可以发现本地的trunk文件夹的SVN属性的URL已经被Switch到创建的版本的地址了: 执行SVN更新命令,可以查看到,本地branches文件夹下新增文件夹v1.0以及文件夹里面的文件v1.0。4.修改分支和使用合并Merge功能修改branches/v1.0下面的文件test.txt,添加一行modified in branch v1.0.然后签入到SVN服务器中: 由于刚才我们已经将trunk的SVN版本库URL转换到对应的版本,所以这个时候更新trunk文件夹可以看到更新的test.txt文件。 为了作测试,我们将trunk文件夹switch至对应的trunk地址: 当switch成功后,我们可以看到trunk下test.txt文件的内容并没有任何的更改,这正体现了刚才我们所说的在分支中的修改不会影响到主干。 下面修改trunk文件夹下的test.txt,添加一行modified in trunk.然后签入到SVN服务器中: 最好我们将实现一个重要的功能,就是Merge合并功能,将分支合并到主干中,这也是在团队软件开发中我们经常要使用的功能。 在TortoiseSVN的Revision Graph中可以查看trunk的版本变化图,如下: 从上图可以得出,在版本10的时候我们创建了分支版本/bran

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档