`
mfcai
  • 浏览: 404734 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用TortoiseSVN进行分支管理

阅读更多
SVN中的Branch/tag在一个功能选项中,在使用中很容易产生混淆。
分支(Branch)管理和标记(Tag)管理,版本管理系统有两个基本的功能。
分支用于在并行开发,这里的并行是指和trunk(主分支)的并行。
而tag是用来做一个里程碑(milestone),不管是不是release,都是一个可用的版本。


那么什么时候用到tag管理?什么时候用到Branch管理?
我举两个场景:
场景一,有客户想对产品做定制,但是我们并不想修改原有的svn中trunk的代码。
场景二,我们正在开发产品下阶段的任务,但上阶段的工作发现问题


以场景二为例,项目某一阶段开发完成后,这个时候要做一个tag,tag_mfcai_V1.01.00,
然后基于这个tag发布一个新的版本,假设项目是web项目,那么基于这个tag发布一个war包。
然后trunk进入下阶段继续开发,但是很不幸发布的版本被检测出来了bug,有人会提议,把bug放到下阶段的任务中去。假设下阶段的任务才刚开始,用户可等不起.他们会认为一个小的bug解决要这么长时间,效率太低了.
那么就需要基于tag_mfcai_V1.01.00做一个branch,branch_bugfix_V1.01.00,基于这个branch进行bugfix,
等到bugfix结束,做一个tag,tag名称假设为:tag_mfcai_V1.01.01,基于这个tag再发布一个版本。
这样,又没有影响trunk(主分支)的开发。然后,根据需要决定branch_bugfix_V1.01.00是否并入trunk。


再介绍点打tag的知识。确认项目组成员的代码都commit后。
1)右击要打tag的目录--->TortoiseSVN--->branch/tag
2)再弹出来的对话框中,要求输入分支或标记的目标路径
3)创建分支或标记的时候,你有三个选项版本库中的最新版本,版本库中的指定版本,工作副本。
     最新版本(HEAD revision in the repository)——直接从版本库中最新创建,由于不需要从你的工作拷贝中传输数据,创建过程会很快。
     版本库中的指定版本(Specific revision in the repository)——同样是从版本库中创建,不同的是你可以指定一个版本号。如果你忘了版本号,可以通过显示版本记录来找到你想要的版本号(如下图)。这种方式同样不需要从你的工作拷贝中传输数据,创建过程也很快。
     工作副本——这种方式会依据当前工作拷贝的版本状况(无论是你做了本地的修改,或是将其中的某些文件更新到了一个历史版本)来创建分支拷贝。这种创建方式会根据工作副本中每个文件的版本情况来决定是否要从工作拷贝向版本库中传输数据。
4)最后一个选项就是“切换工作副本至分支/标记”选项,如果选中这个选项,顾名思义你用来创建分支或标记的工作拷贝就会自动切换到指定创建的版本或标记的。当然你可以通过Switch(重新定位)和Checkout(检出)功能来完成切换的工作。


本文欢迎转载,转载请注明出处与作者
出处:http://blog.sina.com.cn/staratsky
作者:流星
分享到:
评论

相关推荐

    TortoiseSVN中分支和合并实践.zip

    使用svn几年了,一直对分支和合并敬而远之,一来是因为分支的管理不该我操心,二来即使涉及到分支的管理,也不敢贸然使用合并功能,生怕合并出了问题对团队造成不良影响,最主要的原因是,自己对分支的目的和合并的...

    TortoiseSVN

    并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展开发...

    TortoiseSVN1.6.17-32位

    并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展...

    subversion-TortoiseSVN-使用手册(CHM+HTML,中英完整版)

    5.9.3. 使用TortoiseIDiff进行比较的图像 5.9.4. 其他的比较/合并工具 5.10. 添加新文件和目录 5.11. 忽略文件和目录 5.11.1. 忽略(Ignore)列表中的文件簇 5.12. 删除、重命名和移动 5.12.1. 仅在单一实例中重命名...

    TortoiseSVN_1.6.17简体中文版附带教程

    TortoiseSVN,一款很好用的版本...它是对源代码的各个主要版本及分支版本进行记录、更新、还原,以及对团队开发的源代码进行集成管理的工具软件。 注:此次上传资源适用于win32操作系统,非win 或win64 请绕道,谢谢。

    TortoiseSVN-1.7.10.23359-x64-svn-1.7.7

    并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展...

    TortoiseSVN 1.8.1.24570简体中文版.rar

    可以代替CVS,同时它也支持SSL,作为一款跨平台的多人协作版本管理工具,这可以让多成员团队管理同一个代码更为轻松,通过SVN你可以很方便地进行分支管理,可以合并并记录下所有的版本数据。内置差异查看器以及差异...

    TortoiseSVN-1.8.1 win64位

    并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展开发...

    TortoiseSVN-1.14.1.29085-x64-svn-1.14.1.msi (代码管理软件+中文语言包)

    SVN是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。

    TortoiseSVN-1.6.7.18415-win32(版本控制 含简体中文语言包)

    SVN,是SubVersion的简称。它是CVS的替代产物,同时也支持 SSL。...SVN作为跨平台多人协作的版本的管理方法,在多个团队成员管理同一段代码的过程中显得尤为重要,使用SVN可以方便的进行分支、合并,记录下所有的版本。

    TortoiseSVN 1.5.2.13595版(Windows下的SVN客户端)

     并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展...

    TortoiseSVN-1.14.6.29673-x64-svn-1.14.3

    简介:SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个...

    TortoiseSVN-1.6.4.16808-cn(SVN客户端1.6.4中文版)

     并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展...

    TortoiseSVN 1.5.2.13595(SVN客户端)

     并且你不一定必须使用 Windows 资源管理器,TortoiseSVN 的右键菜单可以工作在其他文件管理器,以及文件/打开对话框等标准的 Windows 应用程序中。你必须牢记,TortoiseSVN 是有意作为 Windows 资源管理器的扩展...

    TortoiseSVN-1.14.1.29085-x64-svn-1.14.1.zip

    简介:SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个...

    TortoiseSVN-1.7.10.23359-win32中文

    SVN,是SubVersion的简称。它是CVS的替代产物,同时也支持 SSL。...SVN作为跨平台多人协作的版本的管理方法,在多个团队成员管理同一段代码的过程中显得尤为重要,使用SVN可以方便的进行分支、合并,记录下所有的版本

    TortoiseSVN-1.9.2.26806

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同...

    TortoiseSVN-1.9.7-X64+简体中文安装包

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。

    TortoiseSVN-1.8.10.26129-x64 for windows x64

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion

Global site tag (gtag.js) - Google Analytics