分支 (版本控制)

✍ dations ◷ 2025-02-23 14:41:54 #版本控制系统,版本控制

在版本控制与软件配置管理中,分支(英语: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。

相关

  • 自燃温度自燃(英语:Spontaneous combustion 或 pyrophoric)是指可燃物质在没有外部火花、火焰等火源的作用下,因受热或自身发热并蓄热所产生的自行燃烧。蓄积的热量达到某个温度时,干草、
  • 右议政右议政,亦称右相、右政丞、右揆、右阁、右台,是朝鲜王朝时期议政府重要成员之一,与领议政、左议政并称为“三公”、“三政丞”。右议政一职于1414年设立,位居领议政和左议政之下
  • 马来亚联邦马来亚联邦(英语:Malayan Union,1946年—1948年)是第二次世界大战之后,英国殖民政府为整合英属马来亚,而在马来半岛所策划的联邦体制,属英国皇家殖民地,由第一任总督爱德华·占德(英
  • 巴塔哥尼亚沙漠巴塔哥尼亚荒漠(西班牙语:Patagonia extraandina),也被称为巴塔哥尼亚草原,是阿根廷最大的荒漠,亦为世界第七大荒漠,占地673000平方公里。其沙漠主要位于阿根廷,智利南部,西侧以安地
  • 1661台湾船园区1661台湾船园区,为台南市安平港的户外博物馆,占地约1,800坪,2019年开馆,主要展示仿古帆船“台湾成功号”,并结合公共艺术推广海洋文化。台湾成功号,为台湾第一艘仿古木造帆船,原型
  • 安德鲁·D·汉密尔顿贺慕敦(英语:Andrew D. Hamilton;1952年-),汉名贺慕敦,生物化学家,现任纽约大学校长,前任牛津大学校长。加盟牛津大学之前,安德鲁·D·汉密尔顿是美国耶鲁大学本杰明·斯里曼化学教授(B
  • OffonoffOFFONOFF(韩语:오프온오프)为HIGHGRND旗下两人团体,由0channel、Colde两人组成,两人包办了词曲创作,连MV的制作也亲自负责。2015年于SOUNDCLOUD音乐频道上发表歌曲出道。之后陆续
  • 崔景荣崔景荣(1559年-1631年),字自强,直隶大名府长垣县人,民籍,明朝政治人物。顺天府乡试第六十一名。万历十一年(1583年)会试第二百七十三名,登进士第三甲第二十二名。授山西平阳府推官,擢御
  • 伦巴底王国伦巴底王国(拉丁语:Regnum Langobardorum),或译为伦巴第王国,伦巴德王国,是于6世纪晚期由日耳曼人的一支,伦巴底人在意大利半岛建立的中世纪早期国家。由于建立世袭王朝的几次尝试
  • 红鞋男子《红鞋男子》(英语:The Man with One Red Shoe)是一部上映于1985年的美国喜剧电影,由斯坦·德拉戈蒂(英语:Stan Dragoti)执导,汤姆·汉克斯和达布尼·柯曼主演。这部电影是1972年由