近日发现原来对
SVN
中分支的理解过于肤浅,所以特意花功夫深入了解一下。
分支用于解决什么样的问题?
在手机游戏开发过程中,经常会遇到多种机型移植的问题。通常开发人员都说以一种机型作为
release
基础版本的目标,然后再此基础上进行相关的适配工作,如,键值修改,屏幕大小的修改单等。
然而同时维护多个版本是异常头疼的事情,因为很少有人能保证在移植之前,基础版本是没有
bug
的,特别是在工期很紧的情况下。这样一来,基础版本中出现了
bug
,就需要手动的“
Ctrl+C/Ctrl+V
”到其他的所有版本,各种版本的管理非常混乱,经常一不小心就会出现这样那样的问题。
而
SVN
的分支
(branch)
虽然不能做到自动将基础版本中的修改复制到其他版本中,却可以对各种版本的管理提供更有效和更规范的支持,避免了很多人为造成的问题。使用
SVN
来管理,可以将基础版本作为主干
(trunk)
,并从项目启动到
alpha
版本的推出,都可以在主干上进行开发。
alpha
版本发布以后,对于其他版本可以分别建立分支,如:
branch_moto
,
branch_s603
等
如何创建分支?
创建分支非常简单,只需在需要创建分支的工作目录上,使用TortoiseSVN → Branch/Tag命令,在
"To URL"
项指定待创建的分支
url
即可。具体
可查看TortoiseSVN的帮助文档中的“
Braching/Taging
”一节
如何在分支下工作?
假设我们的主干名为
trunk
,分支目录名为
branch
。
branch
实际上是
trunk
目录在
branch
创建时的
copy
,而创建以后,
branch
与
trunk
实际就是互不干扰的工作了,
branch
上的修改不会影响到
trunk
,反之亦然。
如何合并分支?
事实上,我们并没有解决本文开头所提出的问题,即,
trunk
有了修改之后,并不会自动提交到
branch
中(不知道有没有其他的版本管理工具可以做到),这一切都需要手动来实现,而这个过程在
SVN
中称为“合并
(merge)
”。
SVN
合并与原始的“
Ctrl+C/Ctrl+V
”相比,有以下几点好处(假设是将
trunk
合并到
branch
中):
1
、
trunk
中新增的文件可以自动合并到
branch
中
2
、提示
trunk
与
branch
中的同名文件的冲突内容,便于用于编辑冲突
合并操作步骤
在
TortoiseSVN
中提供便捷的合并功能。在待合并的工作目录上(如:
branch
),使用TortoiseSVN → Merge命令,在“
From:(start URL and revision of the range to merge)
”中选择希望合并的目录
(
如:
trunk)
,并指定希望合并的开始
revision
编号,在“
To:(end URL and revision of the range to
merge)
”中选择结束
revision
编号。然后点击“
merge
”完成合并操作,剩下的工作就是编辑冲突了,当然运气好的话是不需要这个过程滴。
值得注意的是,“
From:
”和“
To:
”中的
URL
通常是相同的,切记不要与创建分支时的含义混淆。
与合并相关的操作可查看TortoiseSVN的帮助文档中的“
Merging
”一节
分享到:
相关推荐
合并操作是 SVN 中的一种重要操作,通过合并操作,可以将分支中的修改合并到主干中。在 Eclipse 中,合并操作可以通过以下步骤实现: 1. 在分支中进行开发,并且提交,在主干中进行更新。 2. 打开合并,选择类型,...
在团队协作中,SVN 提供了创建分支和合并分支的功能,以便开发者可以在不影响主线开发的情况下进行独立的工作。下面将详细介绍如何在 SVN 中进行拉分支和合并操作。 一、创建仓库 创建 SVN 仓库是团队协作的第一步...
"svn拉分支合并文档" SVN(Subversion)是一种开放源代码的版本控制系统,相比RCS和CVS,它采用了分支管理系统。SVN的主要特点是支持分布式版本控制,能够对文件和目录进行版本控制。 svn目录结构: * 每个子系统...
在实际开发中,SVN的分支管理策略可以帮助团队有效地组织工作,如使用特性分支进行新功能开发,使用hotfix分支快速修复生产环境的bug,以及使用release分支准备产品的发布。了解并熟练掌握这些基本操作是SVN协同开发...
本文将详细讲解如何进行SVN分支与主干的合并以及冲突处理,帮助开发者更好地理解和掌握这一核心操作。 ### SVN分支与主干的概念 在SVN中,"分支"和"主干"是两个重要的概念。主干(Trunk)通常代表项目的主要开发线...
二、 SVN分支简介 1、SVN仓库目录结构Repository 2、 结合eclipse创建分支 3、 结合eclipse创建标记tags 三、 合并主干和分支 1、 主干合并分支 2、 分支合并主干 3、 合并发生冲突 情况1:标记冲突,稍后处理。 ...
一、SVN分支的理解 在SVN中,分支是一种复制主分支(trunk)的方法,这样你就可以在不影响主分支的情况下进行开发。分支就像主分支的一个快照,你可以在这个副本上自由地添加、修改或删除文件,而不会立即影响到主...
当开发者从不同的分支进行开发时,这个任务会确保本地代码与选定的SVN分支同步。同样,如果需要合并分支,可以使用`svn-checkout`任务切换到目标分支。 在自动集成环境中,我们还可能需要设置自动测试和构建的逻辑...
### SVN分支管理多版本知识点详解 #### 一、引言 在软件开发过程中,随着项目的迭代更新,如何高效地管理不同版本之间的代码成为了项目管理中的一个重要环节。Subversion(简称SVN)作为一款广泛使用的版本控制...
下面是对SVN分支与合并的详细讲解。 1. SVN分支创建: 在SVN中,创建分支通常是为了进行长期的特性开发或隔离修复工作。你可以通过`svn copy`命令或者在图形界面工具中选择“创建分支”选项来实现。例如,要从...
#### 一、SVN分支的基本概念 在软件开发过程中,版本控制系统(Version Control System, VCS)是必不可少的工具之一。Subversion(SVN)作为一款流行的集中式版本控制系统,被广泛应用于项目管理之中。在SVN中,有...
#### 二、SVN分支的基本操作 ##### 创建分支 在实际操作中,可以使用Eclipse集成开发环境中的SVN插件来创建分支。具体步骤如下: 1. **打开Eclipse**:启动Eclipse IDE。 2. **选择项目**:右键点击需要创建分支...
1. 将分支中改动的代码全部提交。 2. 切换到trunk。 3. 右击项目->Team->合并,选择merge two different trees,然后输入分支的URL,选择一个分支的版本,最后点击finish。 冲突解决 在分支合并到主干时,我们可能...
SVN 中的 Branches 分支以及 Tags 标签详解与应用举例 SVN(Subversion)是一款版本控制系统,广泛应用于软件开发中。它可以帮助开发者管理和控制代码的版本。SVN 中有两个重要的概念:Branches 分支和 Tags 标签。...
【SVN 分支合并基本操作】是软件开发中配置管理工具 Subversion (SVN) 的核心功能之一,它允许开发团队协同工作,各自在独立的分支上开发,然后将改动合并回主干,以保持代码的稳定性和一致性。以下是详细的操作步骤...
在软件开发过程中,SVN 的分支与合并功能是非常重要的,下面我们将详细介绍 SVN 中的分支与合并。 为什么需要分支?在软件开发过程中,项目需求可能会突然变化,导致项目需要做较大改动。这时,如果整个团队都在同...
SVN 分支的创建与合并是版本控制系统中非常重要的特性,可以帮助开发者更好地管理和维护代码。通过创建分支,可以将新的特性或 bug 修复工作与主干分离,避免对主干的干扰。当新的特性或 bug 修复工作足够稳定之后,...
SVN分支管理使用说明,以图片方式示意一个项目如何创建并管理SVN分支【管理员文件选择错了】