分支 (版本控制)

✍ dations ◷ 2025-12-04 11:39:40 #版本控制系统,版本控制

在版本控制与软件配置管理中,分支(英语:Branching)是由某个版本的程式码或软件物件中建立复制版本,在分支出来后的两个版本,可以独立进行修改。

分支会形成树状结构,也被称为trees,streams或codelines。原始的版本,称为父分支(parent branch)或是上游分支(upstream branch)。分支出来的复本,称为子分支(Child branches)。作为最源头,没有父分支的分支,称为主干(trunk)或主线(mainline)。

在分散式版本控制系统(例如Darcs(英语:Darcs))中,分支和存放版本的仓库(repository)是一样的。在这类系统,复制一份仓库的复本和分支是一样的。

软件进行分支后,之后有可能会再将分支合并回父分支。常见的是将修改内容合并回主干(有可能主干不是父分支)。若某个分支不打算合并(例如曾由第三方授权,授权内容不相容,因此已重新授权(英语:relicensing),或是用在不同用途上),会称为分叉(fork)。

建立分支可以让各部分的程式码可以平行开发。大型专案会有不同的参与者,例如开发人员、build管理者,以及软件质量保证人员等。甚至需要维护针对不同操作系统的不同发行版。分支可以让参与者在不破坏基础代码稳定性的情形下,将修改和基础代码隔离,再进行程式错误修正、新机能(英语:Feature (software design))开发、软件版本整合等。这些修改可以在测试完成后,再合并回主线。

开发分支(development branch)或开发树(development tree)的程式码是指正在软件开发,但还没有正式发行的程式码。若在开放源代码社群中,“正式发行”不是那么直觉,因为任何人随时都可以取出(check out)需要的版本,不管是不是在开发分支中都可以取出。一般而言,最终会是下一个主要版本的分支就是开发分支。不过也常常同时开发多个机能,因此存在多个开发分支。

有些版本控制软件会针对主要的开发分支有特殊的命名,例如在CVS中称为MAIN,在Git中则称为master。

在cvc(英语:cvc system)(开源软件,整合rPath开发的版本控制系统)及CVSNT(英语:CVSNT)中,可以针对上游的分支建立阴影分支或魔术分支,在小修改的维护上比较方便。

在分散式版本控制中,可以复制整个仓库(以及其中的分支),之后再进行开发。Monotone(mtn)、Mercurial(hg)及Git称为clone。

相关

  • 埃里克·比纳埃里克·J·比纳(英语:Eric J. Bina,1964年10月-)是Mosaic的共同创建者和Netscape的联合创始人。1993年,比纳和马克·安德森在伊利诺伊大学厄巴纳-香槟分校的NCSA担任程序员时开发
  • 白垩纪-第三纪灭绝事件白垩纪-古近纪灭绝事件(简称K-Pg事件、K-Pg灭绝),旧称为白垩纪﹣第三纪灭绝事件(简称K-T事件、K-T灭绝),俗称恐龙大灭绝,是地球历史上的第五次以及最后一次大规模物种灭绝事件、也是
  • 伦敦大学圣乔治学院伦敦大学圣乔治学院(St George's, University of London,法定名:St George's Hospital Medical School,非正式:St George's或SGUL) 是位于英国伦敦的一所医学院,是伦敦大学下属学院
  • D01(Antifungals for dermatological use)(Emollients and protectives)(Preparations for treatment of wounds and ulcers)(Antipruritics, including antihistamines, anesthetics,
  • 满族传统命名满族人名是指满族人的姓名。从女真时代至现代,经历了数百年间的巨变。满人在传统上使用满语人名。满语人名可能因年代久远,大多数都难以找到定义。一些学者试图对其进行分类。
  • 国家复兴运动国家复兴运动(西班牙语:Movimiento Regeneración Nacional,缩写为Morena)是墨西哥的一个左翼政党。该党成立于2012年。该党的意识形态是卡德纳斯主义、左翼民族主义、改良主义
  • 卡恩夫·班纳肯尼斯·查尔斯·“肯”·布莱纳爵士(英语:Sir Kenneth Charles "Ken" Branagh,/ˈbrænə/ BRAN-ə,1960年12月10日-)是一名北爱尔兰出身的英国男演员、导演、监制和编剧。他曾执
  • 硫酸铅硫酸铅,分子式为PbSO4,白色单斜或正交晶体,难溶于水,有毒。是铅矾或硫酸铅矿的主要成分,熔点1443K,Ksp=1.06×10−8,主要用于白色油漆颜料、铅蓄电池等。可溶于硝酸、浓硫酸、饱和
  • D环D环(D-loop),或称置换环(displacement loop)在分子生物学中是指一个双链DNA的两条单链互相分离,并被另外一条(第三条)核酸链隔开的结构。第三条核酸链与与之配对的核酸链具有互补的
  • 陈少梅陈少梅(1909年-1954年9月9日),名云彰,又名云鹑,字少梅,号升湖,中国山水画家,他是金北楼的学生,湖社成员,曾主持湖社天津分会。与齐白石、张大千、溥心畬并称四大画家。陈少梅的父亲陈嘉