軟件版本號(hào)

版本號(hào)的命名

SemVer

根據(jù)國(guó)際主流的慣例,我們使用「語(yǔ)義化版本(Semantic Versioning)」的命名方式阐滩,有時(shí)簡(jiǎn)稱 SemVer痹升。
語(yǔ)義化版本號(hào)(以下簡(jiǎn)稱「版本號(hào)」)的格式是:<major>.<minor>.<patch>沈自。即使用三位非負(fù)整數(shù)毡代,以點(diǎn)號(hào) . 連接。
如:1.4.15床三、6.2.0一罩。

  • <major> 即主版本號(hào),俗稱大版本升級(jí)撇簿。改動(dòng)到主版本號(hào)時(shí)聂渊,標(biāo)志著 API 發(fā)生了巨大變化,包括但不限于新增特性四瘫、修改機(jī)制汉嗽、刪除功能, 一般不兼容上一個(gè)主版本號(hào)找蜜。
  • <minor> 即次版本號(hào)饼暑,俗稱小版本升級(jí)。當(dāng)我們進(jìn)行常規(guī)的新增或修改功能時(shí),改動(dòng)次版本號(hào)弓叛,但是 必須是向前兼容的彰居。這也意味著我們 不能直接刪除某個(gè)功能。如若必要撰筷,我們可以在 changelog 中標(biāo)記某項(xiàng)功能為「即將刪除(Deprecated)」陈惰,然后在下一個(gè)大版本中將其徹底刪除。
  • <patch> 即修訂號(hào)毕籽,俗稱 bug 修復(fù)抬闯。顧名思義,如果僅僅為了修復(fù)或調(diào)整一些小問(wèn)題关筒,我們就只改動(dòng)修訂號(hào)溶握。

那如何判斷一個(gè)修改應(yīng)該是改動(dòng)修訂號(hào)還是次版本號(hào)呢?視情況而定蒸播。比如對(duì)于「修改了 app 圖標(biāo)」這件事來(lái)說(shuō)睡榆,如果只是調(diào)整了圖標(biāo)的間距位置,那么可以認(rèn)作問(wèn)題修復(fù)廉赔;如果把整個(gè)圖標(biāo)換了肉微,配上了不同的標(biāo)語(yǔ)匾鸥,那么這應(yīng)該是一次功能改動(dòng)蜡塌。

注意事項(xiàng)

  • 版本號(hào)前不要加 v。
  • 不要在數(shù)字前補(bǔ) 0勿负。錯(cuò)誤示例:01.12.03馏艾。
  • 每一位版本號(hào)按照 +1 的速度遞增,不要在版本號(hào)之間跳躍奴愉。
  • 主版本號(hào)停留在 0 的版本號(hào)琅摩,即 0.x.x 應(yīng)當(dāng)視作還在內(nèi)部開(kāi)發(fā)階段的代碼。如果代碼有公共 API锭硼,此時(shí)不宜對(duì)外公開(kāi)房资。
  • 1.0.0 的版本號(hào)用于界定公共 API 的形成。
  • 當(dāng)次版本號(hào)遞增時(shí)檀头,修訂號(hào)歸零轰异;當(dāng)主版本號(hào)遞增時(shí),次版本號(hào)暑始、修訂號(hào)歸零搭独。
  • 進(jìn)行新的開(kāi)發(fā)時(shí),版本號(hào)從 0.1.0 開(kāi)始廊镜。
  • 如果不小心把一個(gè)不兼容的改版當(dāng)成了次版本號(hào)發(fā)行牙肝,應(yīng)當(dāng)發(fā)行一個(gè)新的次版本號(hào)來(lái)更正這個(gè)問(wèn)題并且恢復(fù)向下兼容。注意 不能去修改已發(fā)行的版本

一個(gè)典型的版本號(hào)發(fā)展示例

  • 0.1.0
  • 0.1.1
  • 0.1.2
  • 0.2.0
  • 1.0.0
  • 1.1.0
  • 1.1.1
  • ……

預(yù)發(fā)版本號(hào)

在常規(guī)的版本號(hào)命名之上還有一個(gè)特殊類別配椭,叫做預(yù)發(fā)版本號(hào)(prerelease version)虫溜。它表示當(dāng)前版本是一個(gè)不穩(wěn)定的版本,使用它時(shí)需要注意風(fēng)險(xiǎn)股缸。
預(yù)發(fā)版本號(hào)的格式是 <major>.<minor>.<patch>-<tag>吼渡,即前半部分和常規(guī)版本號(hào)相同,然后跟上連接符 -乓序,后面再跟上字母數(shù)字點(diǎn)號(hào)連接符([0-9A-Za-z-.])寺酪。
一個(gè)典型的預(yù)發(fā)版本號(hào)形如 1.0.0-beta.1。建議使用這種 <major>.<minor>.<patch>-<stage>.<num> 的形式替劈。其中 <stage> 一般選用:alpha寄雀、beta、rc陨献。
預(yù)發(fā)版本號(hào)是常規(guī)版本號(hào)的附屬盒犹,因此在版本的大小比較上,仍然先比較常規(guī)版本號(hào)部分眨业;對(duì)于預(yù)發(fā)標(biāo)記部分的比較急膀,則是根據(jù) ASCII 字母表中的順序來(lái)進(jìn)行。

一個(gè)典型的預(yù)發(fā)版本號(hào)發(fā)展示例

  • 0.9.0
  • 1.0.0-alpha.1
  • 1.0.0-alpha.2
  • 1.0.0-beta.1
  • 1.0.0-rc.1
  • 1.0.0
  • 1.0.1
  • ……
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末龄捡,一起剝皮案震驚了整個(gè)濱河市卓嫂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌聘殖,老刑警劉巖晨雳,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異奸腺,居然都是意外死亡餐禁,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén)突照,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)帮非,“玉大人,你說(shuō)我怎么就攤上這事讹蘑∧┛” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵衔肢,是天一觀的道長(zhǎng)庄岖。 經(jīng)常有香客問(wèn)我,道長(zhǎng)角骤,這世上最難降的妖魔是什么隅忿? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任心剥,我火速辦了婚禮,結(jié)果婚禮上背桐,老公的妹妹穿的比我還像新娘优烧。我一直安慰自己,他們只是感情好链峭,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布畦娄。 她就那樣靜靜地躺著,像睡著了一般弊仪。 火紅的嫁衣襯著肌膚如雪熙卡。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,292評(píng)論 1 301
  • 那天励饵,我揣著相機(jī)與錄音驳癌,去河邊找鬼。 笑死役听,一個(gè)胖子當(dāng)著我的面吹牛颓鲜,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播典予,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼甜滨,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了瘤袖?” 一聲冷哼從身側(cè)響起衣摩,我...
    開(kāi)封第一講書(shū)人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎孽椰,沒(méi)想到半個(gè)月后昭娩,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡黍匾,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了呛梆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片锐涯。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖填物,靈堂內(nèi)的尸體忽然破棺而出纹腌,到底是詐尸還是另有隱情,我是刑警寧澤滞磺,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布升薯,位于F島的核電站,受9級(jí)特大地震影響击困,放射性物質(zhì)發(fā)生泄漏涎劈。R本人自食惡果不足惜广凸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蛛枚。 院中可真熱鬧谅海,春花似錦、人聲如沸蹦浦。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)盲镶。三九已至侥袜,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間溉贿,已是汗流浹背系馆。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留顽照,地道東北人由蘑。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像代兵,于是被迫代替她去往敵國(guó)和親尼酿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 就算美國(guó)在28號(hào)秘密將主權(quán)轉(zhuǎn)移給伊拉克植影,可是這就代表著伊拉克人擁有著自己獨(dú)立裳擎,民主的國(guó)家嘛,他們享受國(guó)家?guī)Ыo自己的...
    房子_f8fd閱讀 181評(píng)論 0 0
  • 有一個(gè)月沒(méi)有寫(xiě)東西思币,連狗屎般的初稿都沒(méi)有鹿响。 短短幾個(gè)月經(jīng)歷了兩次所謂的創(chuàng)業(yè),每次都忙到昏天暗地谷饿。 除了累之外惶我,就是...
    迷你姐閱讀 229評(píng)論 0 1
  • 我避開(kāi)無(wú)事時(shí)過(guò)分熱絡(luò)的友誼,這使我少些負(fù)擔(dān)和承諾博投。我不多說(shuō)無(wú)謂的閑言绸贡,這使我覺(jué)得清暢。------ 我盡可能不去緬...
    云水婷心_1016閱讀 392評(píng)論 0 1
  • 很多時(shí)候我們對(duì)于問(wèn)題的定義,會(huì)直接影響最后的回答質(zhì)量虑绵。 對(duì)于概念的清晰認(rèn)知尿瞭,是正確了解世界的前提。就像我上一篇文章...
    青兒姑娘閱讀 168評(píng)論 0 0
  • 當(dāng)鮮花愛(ài)上了牛糞 一切 已不重要 只顧為您盡情 綻放
    gesangmucuo閱讀 173評(píng)論 0 0