`

版本分支控制几种方式

阅读更多
如何分支和tags,这个是经常被争议的话题,参考svn最佳实践,主要有以下三种方式:
The Never-Branch system

通常在项目的初期,还没有发布可运行的版本。

    用户每天都把代码提交到/trunk
    在复杂的任务可能会出现/trunk的代码处于通不过编译的错误状态
    非常简单的策略,不需要merge代码,不需要学习分支和tag。

The Branch-When-Needed system

这个需要维护分支和trunk,merge,但相对轻量级的解决方案,如果经常有一些小的变更,极少有很大的变更,
这种方式可以避免大量的分支管理和merge操作。

    用户把代码提交到/trunk上
    /trunk每次变更都应该能通过编译和回归测试
    一个很大的需求不要在/trunk上开发,因为可能影响别人。
    当有很大的需求和实验性的功能需要开一个新的分支,并在开发完成时将必要的功能合并到trunk上。
    这种方式trunk必须保持稳定,但是可以避免很多的merge操作。

The Always-Branch system

这个相对重量级一些:

    每个人都工作在自己的分支上
    当功能完成后,将所有的分支必要的功能merge到trunk上。
    trunk必须保持一直非常的稳定,会导致很多的merge冲突。
0
2
分享到:
评论

相关推荐

    SVN版本控制系统,采用了分支管理系统

    SVN(Subversion)是一种广泛使用的版本控制系统,它在IT领域扮演着至关重要的角色,特别是在软件开发团队协作中。Subversion的设计目标是替代早期的CVS(Concurrent Versions System),并引入了更先进的分支管理...

    git版本控制介绍

    传统的版本控制系统如Subversion(SVN)采用集中式管理方式,而分布式版本控制系统(Distributed Version Control System,DVCS)如Git,则为每个开发者提供了一个完整的代码库副本,这极大地提高了效率并增强了系统...

    版本控制方法研讨版本控制方法研讨

    在"版本控制方法研讨"的主题中,我们将深入探讨几种常见的版本控制系统及其应用。 1. **Git**:Git是最流行的分布式版本控制系统,由Linux之父Linus Torvalds创建。它提供了强大的分支和合并功能,使得多人协作变得...

    svn分支管理

    svn分支管理是版本控制系统中的一种常用技术,用于管理项目的不同版本和变更。通过创建分支,可以让开发者在不影响主干的同时,进行新功能的开发和测试。在本文中,我们将详细介绍svn分支管理的步骤和注意事项。 ...

    软件版本控制管理规范.rar

    版本控制系统(Version Control System,VCS)是一种用于跟踪文件或项目修改历史的工具。它允许开发者在任何时候查看、比较、恢复特定版本的代码,并且可以合并不同人的改动,避免冲突。常见的版本控制系统有Git、...

    分布式版本控制系统-Git详解

    - **直接快照,而非比较差异**:不同于传统的版本控制系统,`Git`在记录版本时采用的是直接快照的方式,这样即使文件内容未发生变化,也不会重复保存。 - **近乎所有操作都可本地执行**:由于`Git`是分布式的,大...

    SVN版本控制使用心得

    SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪文件和目录的变更。它允许团队成员协同工作,每个人都可以在自己的副本上进行修改,然后将更改合并回主仓库,而不会破坏其他人的工作。这篇博客文章...

    Subversion 版本控制流程概要

    Subversion,通常缩写为SVN,是一种广泛使用的版本控制系统,尤其在开源社区中非常流行。它提供了对文件和目录的版本历史管理,允许多个人协同工作并追踪更改,同时保持代码库的一致性和完整性。Subversion的核心...

    git分支原理命令图文解析

    主要有以下几种合并方式: - **“Fast-forward”(快进)式合并**:如果要合并的分支是当前分支的直接下游,Git会直接将当前分支的指针移到下游分支的末尾。 - **基本合并**:当两个分支的最后共同祖先不位于其中一个...

    SVN分支管理模式解析.docx

    本文将从SVN分支管理的结构模式、规则模式、使用场景、优缺点等方面,详细介绍几种常见的分支管理模式,旨在为开发者提供参考依据,帮助他们根据项目的实际需求选择最合适的分支管理模式。 #### 二、SVN分支管理...

    使用Subversion进行版本控制

    与传统的版本控制系统相比,Subversion提供了一种更加直观的方式来处理文件的历史版本。它可以追踪每一个文件或目录的变化历史,包括谁更改了文件、何时更改以及为什么更改。 #### 版本控制的重要性 版本控制对于...

    查表、多分支(80C51单片机汇编语言编程)

    查表和多分支是单片机汇编语言编程中常用的两种技术。在80C51单片机的应用中,这两种技术能够有效地帮助我们处理不同的数据和实现复杂的控制流程。 查表,顾名思义,是将一系列数据预先存储在存储器中的一个表格里...

    svn版本之间的合并问题

    面对树冲突,有几种常见的解决方法: 1. **手动调整目录结构**:最直接的方法是手动修改目标版本中的目录结构,使得冲突的文件或目录不再位于同一路径下。但这通常意味着需要更改代码的组织方式,可能不是最理想的...

    版本控制工具概述交流

    现在,我们来看看几种主流的版本控制工具。Starteam是一个综合性的工具,包含版本控制、构建管理和缺陷跟踪,但它的管理和维护较为复杂。PVCS Version Manager提供了广泛的文件类型支持,适合并行开发和变更控制,而...

    版本控制工具Git的使用方法.docx

    版本控制的发展经历了几个阶段和方法,包括通过复制整个项目目录的方式来保存不同的版本、本地版本控制系统、集中版本控制系统和分布式版本控制系统等。 分布式版本控制系统(Distributed Version Control System,...

    容器编排平台的配置管理的版本控制与回滚.pptx

    以下是几种常用的版本控制策略: 1. **集中式版本控制**:这种方式依赖于中央服务器来存储所有版本的信息。这种方法的优点在于它能够提供一个统一的源点,使得版本的追踪变得简单。此外,这种模型通常支持分支和...

    预分支电力电缆安装

    预制分支电力电缆安装是电力工程施工中的一种先进技术,主要针对电力电缆分支和连接的一种解决方案。在电力系统中,分支电缆应用广泛,特别是在工业建筑、民用建筑和商业中心等需要电缆网络布置较为复杂的场合。传统...

    Git版本控制1

    Git是一种强大的分布式版本控制系统,它的出现解决了传统集中式版本控制系统的一些问题。版本控制系统的主要目的是跟踪和管理文件的变更历史,以便在需要时能够回溯到特定版本,同时也支持多人协作和项目管理。 在...

Global site tag (gtag.js) - Google Analytics