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

svn里的branch、trunk、tag的用处

阅读更多

From: http://www.svn8.com/svnjs/20081216/1713.html

 

这只是个说明,你不按说明来办事也不会怎么样,svn照样工作得很好。

branches:分枝

当多个人合作(Sally和John)时,可能有这样的情况出现:John突然有个想法,跟原先的设计不太一致,可能是功能的添加或者日志格式的改进等等,总而言之,这个想法可能需要花一段时间来完成,而这个过程中,John的一些操作可能会影响Sally的工作,John从现有的状态单独出一个project的话,又不能及时得到Sally对已有代码做的修正,而且独立出来的话,John的尝试成功时,跟原来的合并也存在困难。这时最好的实践方法是使用branches。John建立一个自己的branch,然后在里面实验,必要的时候从Sally的trunk里取得更新,或者将自己的阶段成果汇集到trunk中。(svn copy SourceURL/trunk DestinationURL/branchName -m "Creating a private branch of xxxx/trunk." )

trunk:主干

主干,一般来说就是开发的主要呆的地方,

tag:

在经过了一段时间的开发后,项目到达了一个里程碑阶段,你可能想记录这一阶段的代码的状态,那么你就需要给代码打上标签。(svn cp file:///svnroot/mojavescripts/trunk file:///svnroot/mojavescripts/tags/mirrorutils_rel_0_0_1

-m "taged mirrorutils_rel_0_0_1")

另有一说,无所谓谁对谁错。

trunk:表示开发时版本存放的目录,即在开发阶段的代码都提交到该目录上。

branches:表示发布的版本存放的目录,即项目上线时发布的稳定版本存放在该目录中。

tags:表示标签存放的目录。

在这需要说明下分三个目录的原因,如果项目分为一期、二期、三期等,那么一期上线时的稳定版本就应该在一期完成时将代码copy到branches上,这样二期开发的代码就对一期的代码没有影响,如新增的模块就不会部署到生产环境上。而branches上的稳定的版本就是发布到生产环境上的代码,如果用户使用的过程中发现有bug,则只要在branches上修改该bug,修改完bug后再编译branches上最新的代码发布到生产环境即可。tags的作用是将在branches上修改的bug的代码合并到trank上时创建个版本标识,以后branches上修改的bug代码再合并到trunk上时就从tags的version到branches最新的version合并到trunk,以保证前期修改的bug代码不会在合并


分享到:
评论

相关推荐

    SVN trunk, branch, tag merge 等的应用

    SVN(Subversion)是一种广泛使用的版本控制系统,它的核心概念包括trunk、branch和tag,这些都是进行协同开发和代码管理的重要元素。下面将详细解释这些概念以及它们在实际项目中的应用。 1. **Trunk**:Trunk通常...

    SVN 主干(trunk)、分支(branch )、标记(tag)

    资源中有 SVN 主干(trunk)、分支(branch )、标记(tag) 的详细解释,和作用 并带 SVN分支与合并 的详细操作文档(附图)。 SVN分支与合并的总结 1.分支(branche)的创建。 1、分支创建是建立在主干上的。 2、创建...

    SVN版本控制方案

    通过对SVN中Trunk、Branch、Tag的概念及使用方法的介绍,我们可以更好地理解如何高效地使用SVN来进行版本控制。遵循这些约定能够有效提升团队协作效率,减少代码冲突,确保项目的稳定性和可持续发展。

    4.1、SVN trunk(主线) branch(分支) tag(标记) 1

    本文将深入探讨 SVN 中的 trunk、branch 和 tag 三个核心概念,以及它们在实际开发场景中的应用。 首先,trunk(主干或主线)是项目的主要开发分支,代表了项目的最新稳定状态。新功能的开发通常在这个分支上进行,...

    SVN的标准目录结构:trunk、branches、tags

    当需要建立 branch 或 tag 时,可以使用 SVN 中的 copy 操作,例如,从 trunk 中 copy 到 branches 中,或者从 trunk 中 copy 到 tags 中。 权限控制 在 SVN 中,可以使用 authz 文件控制目录的访问权限。例如,...

    SVN中的Branches分支以及Tags标签详解与应用举例

    创建 Branch 分支或者 Tag 标签非常容易,只需要在 TortoiseSVN 中创建对应的文件夹,然后将其提交到 SVN 服务器中。例如,创建一个名为 v1.0 的分支,用于发布一个版本的文件。 Branches 分支的修改和使用 Merge ...

    svn教程转载

    在SVN中,`trunk`、`branch`和`tag`是三个核心概念,它们各自有不同的用途: 1. **Trunk(主干)**: - Trunk是项目的主线或主分支,通常代表项目当前的开发状态。开发人员通常在这里进行日常的开发工作,每次提交...

    SVN打基线常用命令使用介绍

    在Subversion(简称SVN)这样的版本控制系统中,打基线通常是通过创建标签(tag)或分支(branch)来实现的。这两种方式都可以用来保存项目的特定状态,但它们之间有一些细微的区别: - **标签(tag)**:通常用于...

    svn merge简单操作

    - **创建分支**:在 `trunk` 的 `examples1` 目录中选择 “Branch/tag”,然后指定分支路径为 `branches/examples1` 并添加相应的注释信息。 ```bash # 创建分支 svn copy ...

    SVN目录结构说明

    此项目除了标准的trunk、branch和tag之外,还额外划分了一些子目录来存放特定的模块或框架,这有助于更细致地管理和维护代码。 3. **RomleyBMC项目** - **/RomleyBMC** - trunk:存放当前稳定的源码。 - branch...

    SVN 配置管理使用教程

    - Linux下通过命令`svn mkdir trunk/branch/tag`来创建目录结构。 ##### 导入文件 - 可以使用`svn import`命令将本地文件导入到SVN仓库中。 ##### 文件操作 - 使用`svn checkout(co)`和`svn export`命令进行文件检...

    SVN主干和分支操作

    - 在弹出的“Copy (Branch/Tag)”对话框中,设置目标 URL 为分支路径(如`svn://localhost/project/branches`),点击“OK”。 4. **切换工作副本到分支**: - 右键点击项目,选择“Team” -> “Switch to ...

    SVN Client.zip

    5. **分支(Branch)**:在SVN中,分支允许你从主干(Trunk)创建一个独立的开发线,这样可以进行风险较高的开发而不会影响主线。 6. **合并(Merge)**:分支完成后,你需要将分支上的更改合并回主干,以便所有...

    SVN服务端配置手册

    - SVN Branch & Tag:创建和管理代码库的不同版本或分支 通过以上步骤,您已具备基本的SVN服务端配置和客户端使用的知识。在实际项目中,权限管理和版本控制是团队协作的重要环节,确保每个成员都能访问他们所需的...

    使用SVN进行版本控制 使用SVN1.2

    ### 使用SVN进行版本控制:SVN 1.2详解 #### 一、SVN简介与重要性 Subversion(简称SVN)是一款开源的版本控制系统,在软件开发领域有着广泛的应用。它允许开发者们追踪代码的历史变更记录,并支持多人协作开发。...

    SVN如何建立版本分支

    - **同步分支**:如果`trunk`和`branch`之间存在差异,可以定期将`trunk`的最新更改合并到`branch`中,选择“Mergearangeofrevision”进行。 - **最终合并**:当`branch`的功能开发完成并经过测试后,可以使用...

    SVN常用功能详细说明

    - **操作步骤**:在需要创建分支或标签的文件夹上右键选择“Create Branch/Tag...”,然后指定新分支或标签的名称和位置。 #### 五、常见问题及解决方案 ##### 5.1 You must input the log message. - **产生原因...

Global site tag (gtag.js) - Google Analytics