启用SVN的分支管理

本文详细介绍了如何启用和管理SVN的分支技术。内容涵盖分支的基本概念,如版本库、工作副本、TTB目录以及廉价拷贝。讲解了分支的重要性和作用,如隔离开发、方便合并,并对比了分支与文件系统拷贝的区别。接着,文章介绍了如何创建分支、切换分支,以及使用不同方法在SVN中操作分支。最后,讨论了合并分支的策略,强调了合并前的注意事项和常用分支模式,如特性分支和发布分支。
摘要由CSDN通过智能技术生成

前提

使用SVN分支技术,需要理解并掌握SVN的基本操作。

如果对SVN的基本操作不熟悉,或者存在理解上的问题,可能对分支的使用造成障碍。

 

一些基本概念:

1.版本库

版本库就是SVN服务器上,存放记录了文件、目录每一次变化的数据库。

 

2.工作副本

工作副本(也叫工作拷贝,很多时候简写做WC——即Work Copy)。它是版本库代码在本地的映射,开发人员在本地的工作副本中做修改再上传到SVN版本库中。

 

开发人员对于同一个版本库路径,比如https://KFBServer/svn/xykj_2013/trunk,可以创建无数个不同名称的本地文件夹进行下载,这就是“副本”这个名称的意义。

 

3.TTB目录

trunk、tags、branches

trunk:存放开发主线的文件夹,用于创建分支、合并分支、创建标记。

branches:存放分支的文件夹。

tags:存放“快照”的文件夹。通常,tags目录中的东西不再允许修改了,作为一个“定版”来测试、发布。简单的说,一个标签就是具有特定意义的一个版本。 

“分支(branch)和标记(tag)对于 SVN 来说其实都只是主干的拷贝,这些拷贝本身并不存在分支和标记的区别,分支和标记的意义是我们人为给予的”。这句话在分支的使用中就会慢慢理解。

 

4.廉价拷贝

对于SVN来说,通常意义的创建分支,只不过是在版本库内创建了一个目录,并复制了一些文件和子目录过去。但你不需要担心版本库的体积会变得十分巨大,因为Subversion并不是拷贝真实的文件,而是通过拷贝“文件的快捷方式”来完成的。只有当复制后的目录、文件被程序员在本地做了修改并提交到版本库时,SVN才会用真实的文件来存储它们。

 

基本概念

一、什么是分支。

分支是软件开发中源代码管理的一种技术,而不是产品版本——比如精简版、普通版、豪华版,也决不是针对特定用户的特殊修改。

所谓的分支就是一条开发线。

 

说明:上图仅仅描述了分支的创建,并未谈到分支的合并。

不合并的分支只会得到不同的产物,这与我们的初衷相违背,因此我们在使用分支的时候,一旦分支代码通过了测试就必须合并,这样才能形成统一的一套代码。

 

二、为什么要使用分支

分支的作用:隔离。

1.避免未经测试的修改提交到版本库后对编译出的产品造成影响。

2.允许多个开发人员同时修改某一产品的代码时互不影响。

3.允许开发人员在自己的分支中提交半成品代码,即使是无法编译的代码;

4.单个开发人员通过创建多个分支,从而可以同时修改多个问题,并随意切换。相反,在单一开发线中修改多个问题,就很麻烦。

5.允许新入职员工随意修改代码。

 

三、分支和文件系统中简单的拷贝有什么不同

文件系统的拷贝:未处于SVN的管理中,人工比较、跟踪其他分支线的变化非常痛苦,而且容易造成闭门造车的结果,导致合并困难。

分支:处于SVN的管理中,大大减少了人工比较、跟踪其他开发线的工作量。分支既保持独立,又可以随时共享。

 

具体操作

使用分支前需要对版本库做结构调整,目前调整后的结构如下(不排除在对SVN更加了解以后会进行调整):

权限设置如下:

trunk:仅管理员可修改(用于新建项目),下面各文件夹的内容开发人员可读写(因为需要从分支做合并操作)。

tags:仅部门经理可写(用于创建特定版本,比如用于发布、通测等),其他用户只能读。

branches:管理员和部门经理可读写(用于清理很久不合并、不删除的分支),每个开发人员有一个固定的目录,只能读写自己的分支目录,看不到别人的目录。

 

假设场景:需要修改缺陷管理平台上的#77问题,那么首先从主干创建分支。

 

创建主干的分支

 

创建分支有多种操作方法。

1.使用本地工作副本的主干上创建分支。

在本地工作副本的主干目录(trunk)上,右键点击然后选择“分支/标记…”

 

在弹出的窗口中,默认的新分支的目标URL将会是主干trunk的URL。你需要

回答: 在使用IDEA进行SVN切换分支的过程中,首先要勾选"update/switch to specific url"选项,表示启用更改要更新的分支地址。然后,可以通过①按钮选择已有的分支进行切换,如果没有需要的分支,还可以点击按钮①选择"configure Branches"进行配置分支的名称和路径。另外,可以通过点击②按钮选择分支的地址,如果没有分支信息,也可以直接选择SVN的地址。最后,点击"OK"按钮就可以完成分支的切换了。在控制台窗口中,可以通过右键点击项目,选择"subversion",然后选择"show history",再选择"subversion working copies information",点击左上角的"refresh"按钮来获取最新的信息,从而查看当前使用的是哪个版本。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [在Intellij IDEA中使用svn切换分支](https://blog.csdn.net/qq_34627002/article/details/84332121)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [在idea中的svn创建分支,查看分支,切换分支,合并分支,有你想要的......](https://blog.csdn.net/u011066470/article/details/107962579)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值