国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

版本命名及限定規(guī)則詳解

Zhuxy / 509人閱讀

理解版本命名及限定規(guī)則

前言:講解版本命名和版本限定的相關(guān)知識(shí)


版本命名規(guī)則

我們常見(jiàn)的版本命名格式為

[name].x.y.z-[state]

name為可選字段,一般為 v,表示 version

x.y.z 為各版本的序號(hào),遵循 語(yǔ)義化版本命名規(guī)范
實(shí)際上基于此規(guī)范,不應(yīng)該在版本前出現(xiàn) name 字段.

state 可選字段,表示版本狀態(tài),例如 b 表示 beta 測(cè)試版,其他常見(jiàn)狀態(tài),后有詳述

語(yǔ)義化版本命名規(guī)則

該規(guī)則對(duì)版本的迭代命名,做了很好的限制.
核心規(guī)則如下.

序號(hào) 格式要求 說(shuō)明
x 非負(fù)整數(shù) 主版本號(hào)(major),進(jìn)行不向下兼容的修改時(shí),遞增主版本號(hào)
y 非負(fù)整數(shù) 次版本號(hào)(minor),保持向下兼容,新增特性時(shí),遞增次版本號(hào)
z 非負(fù)整數(shù) 修訂號(hào)(patch),保持向下兼容,修復(fù)問(wèn)題但不影響特性時(shí),遞增修訂號(hào)

0.y.z 表示開(kāi)發(fā)階段,一切可能隨時(shí)改變,非穩(wěn)定版。

1.0.0 界定此版本為初始穩(wěn)定版,后面的一切更新都基于此版本進(jìn)行修改。

版本狀態(tài)
描述方式 說(shuō)明 含義
αa alpha 版 內(nèi)測(cè)版本,內(nèi)部測(cè)試的版本,bug 較多
βb beta 版 公測(cè)版本,給外部進(jìn)行測(cè)試的版本,有缺陷
γg Gamma 版 相當(dāng)成熟的測(cè)試版,于發(fā)行版相差無(wú)幾
rc Release Candidate 是前面三種測(cè)試版的進(jìn)一步版本,實(shí)現(xiàn)了全部功能,清除了大部分 bug,接近發(fā)布倒計(jì)時(shí),有時(shí)會(huì)進(jìn)一步細(xì)分為 rc1,rc2

實(shí)際上大部分前端工具均遵守上述規(guī)則

在商業(yè)軟件中還會(huì)見(jiàn)到如下字段.

描述方式 說(shuō)明 含義
Demo 演示版 只集成了正式版部分功能,無(wú)法升級(jí)
SP SP1 是 service pack 的意思表示升級(jí)包
Trial 試用版 試用版
Unregistered 未注冊(cè) 有功能或時(shí)間限制的版本
Lite 精簡(jiǎn)版 只含有正式版核心功能
enhance 增強(qiáng)版 屬于正式版1
free 免費(fèi)版 自由使用版本
release 發(fā)行版 有時(shí)間限制
upgrade 升級(jí)版 有功能增強(qiáng)或修復(fù) bug
Retail  零售版 多帶帶發(fā)售
Cardware 共享版 公用許可證
版本限定

在進(jìn)行包管理時(shí),為了保證安裝依賴的兼容性.
必須對(duì)依賴包版本進(jìn)行限定.參考 npm 限定描述
舉例如下

{
  "devDependencies": {
    "karma": "0.13.22"
  }
}

表示安裝 0.13.22 版本的 karma.

為了方便理解,版本限定的語(yǔ)法簡(jiǎn)述為為 [范圍描述]<版本號(hào)描述>

范圍描述可選,必須配和版本描述確定范圍,無(wú)法獨(dú)立存在

< 小于某一版本號(hào)

<= 小于等于某一版本號(hào)

> 大于某一版本號(hào)

>= 大于等于某一版本號(hào)

= 等于某一版本號(hào),沒(méi)有意義和直接寫(xiě)該版本號(hào)一樣

~ 基于版本號(hào)描述的最新補(bǔ)丁版本

^ 基于版本號(hào)描述的最新兼容版本

- 某個(gè)范圍,他應(yīng)該出現(xiàn)在兩個(gè)版本描述中間,實(shí)際上語(yǔ)法應(yīng)為 <版本描述>-<版本描述>,寫(xiě)在此處為了統(tǒng)一

嚴(yán)格來(lái)講對(duì) ~,^ 的表述需要結(jié)合具體的包管理工具和版本號(hào)規(guī)則來(lái)確定.但是對(duì)于一般使用記住如下原則.
^ 是確保版本兼容性時(shí),默認(rèn)對(duì)次版本號(hào)的限定約束
~ 是確保版本兼容性時(shí),默認(rèn)對(duì)補(bǔ)丁號(hào)的約束

利用 ^,~ 的意義在于確保工具包對(duì)依賴版本的兼容性,排除主版本更迭,
造成依賴失效的可能.

版本描述

* 通配符,類似 glob 模式 *

x,X 約等于 * 號(hào),通常用于次版本和補(bǔ)丁的通配.

0.x 警惕這種版本,說(shuō)明該依賴還未穩(wěn)定(如果它遵守語(yǔ)義化命名的話),此外由于 0.x 版本隨時(shí)可能改變,此時(shí) ^,~ 的都表示為對(duì)補(bǔ)丁版的限制.

相關(guān)舉例如下

< 1.2.3     小于1.2.3 的版本均可 
= 1.2.3     只支持等于1.2.3 的版本 
<= 1.2.3    只支持小于等于1.2.3 的版本
> 1.2.3     只支持大于 1.2.3 的版本
>= 1.2.3    只支持大于等于 1.2.3 的版本
1.2.3-2     支持 >=1.2.3 <3.0.0 的版本
1.x.1       支持 >=1.0.1 <1.1.0 的版本
*           支持 >= 0.0.0 的版本
""          同 *
1           表示 >=1.0.0 <2.0.0 其余任意位置為空相似
1.0         >= 1.0.0 < 1.1.0
~1.1.1      >=1.1.1 <1.2.0
~1.1        >=1.1.0 <1.2.0
~1          >=1.0.0 <2.0.0
^1.1.1      >=1.1.1 <2.0.0
^0.1.1      >=0.1.1 <0.2.0 注意這里,不要以為是 0.1.1-1.0.0 之間
^0.0.1      >=0.0.1 <0.0.2 同上,請(qǐng)注意

注意大部分包管理工具均遵守上述規(guī)則,但是在進(jìn)行版本限定時(shí),請(qǐng)參考包管理工具的配置項(xiàng)說(shuō)明,確定語(yǔ)法格式.

總結(jié)

最常用的知識(shí)

核心命名規(guī)則

版本號(hào)通常稱為 x.y.z

x 主版本號(hào),一般向下不兼容時(shí)增加此值

y 次版本號(hào),向下兼容,添加新特性時(shí)增加此值

z 補(bǔ)丁號(hào),修復(fù)問(wèn)題為改變特性時(shí)增加此值

a,b,rc 分別表示 內(nèi)測(cè),公測(cè),發(fā)行狀態(tài)

版本限定

~ 在依賴版本兼容下,最近的補(bǔ)丁版

^ 在依賴版本兼容下,最近的次版本

重點(diǎn)是保證版本依賴的兼容性,不允許出現(xiàn)依賴的主版本號(hào)范圍可變,即使你的開(kāi)發(fā)包依舊可用

參考資料

語(yǔ)義化版本規(guī)范

npm 版本說(shuō)明

composer version constraints

百度文庫(kù)-版本說(shuō)明詳解

wiki 軟件版本

What"s the difference between tilde(~) and caret(^) in package.json

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/25912.html

相關(guān)文章

  • 正則表達(dá)式詳解

    摘要:學(xué)習(xí)正則表達(dá)式也是如此,循序漸進(jìn),方能厚積薄發(fā)。概念分組捕獲是指將想要匹配的正則表達(dá)式用小括號(hào)括起來(lái),然后與限定符組合使用,可以連續(xù)匹配符合規(guī)則的字符串。 正則表達(dá)式是一個(gè)非常有用的用來(lái)匹配驗(yàn)證字符串的工具。很多人覺(jué)得正則表達(dá)式規(guī)則繁多,學(xué)了也會(huì)忘記,不如等到需要使用的時(shí)候再去查閱即可。這樣的觀點(diǎn)也無(wú)可厚非,不過(guò)我曾經(jīng)看到過(guò)一個(gè)絕妙的關(guān)于閱讀的比喻,閱讀就像是將竹簍浸入到水里面,雖然撈...

    keelii 評(píng)論0 收藏0
  • 【轉(zhuǎn)】php命名空間

    摘要:命名空間可以解決以下兩類問(wèn)題用戶編寫(xiě)的代碼與內(nèi)部的類函數(shù)常量或第三方類函數(shù)常量之間的名字沖突。在命名空間內(nèi)部訪問(wèn)全局類函數(shù)和常量調(diào)用全局函數(shù)訪問(wèn)全局常量實(shí)例化全局類命名空間和動(dòng)態(tài)語(yǔ)言特征命名空間的實(shí)現(xiàn)受到其語(yǔ)言自身的動(dòng)態(tài)特征的影響。 PHP 命名空間(namespace)是在PHP 5.3中加入的,如果你學(xué)過(guò)C#和Java,那命名空間就不算什么新事物。 不過(guò)在PHP當(dāng)中還是有著相當(dāng)重要...

    Jrain 評(píng)論0 收藏0
  • Spring詳解3.Bean的裝配

    摘要:的依賴關(guān)系,根據(jù)依賴關(guān)系配置完成之間的裝配。的行為信息,如生命周期范圍及生命周期各過(guò)程的回調(diào)函數(shù)。使用該種裝配模式時(shí),優(yōu)先匹配參數(shù)最多的構(gòu)造函數(shù)。如果提供了默認(rèn)的構(gòu)造函數(shù),則采用否則采用進(jìn)行自動(dòng)裝配。 點(diǎn)擊進(jìn)入我的博客 1 Spring容器與Bean配置信息 Bean配置信息 Bean配置信息是Bean的元數(shù)據(jù)信息,它由一下4個(gè)方面組成: Bean的實(shí)現(xiàn)類 Bean的屬性信息,如數(shù)...

    endiat 評(píng)論0 收藏0
  • Web前端開(kāi)發(fā)規(guī)范文檔

    摘要:前端開(kāi)發(fā)規(guī)范文檔規(guī)范目的使開(kāi)發(fā)流程更加規(guī)范化。中的非注釋類中文字符須轉(zhuǎn)換成編碼使用,以避免編碼錯(cuò)誤時(shí)亂碼顯示。文件規(guī)范文件名用英文單詞,多個(gè)單詞用駝峰命名法。書(shū)寫(xiě)規(guī)范命名規(guī)范。圖片規(guī)范命名應(yīng)用小寫(xiě)英文數(shù)字組合,便于團(tuán)隊(duì)其他成員理解。 Web前端開(kāi)發(fā)規(guī)范文檔 規(guī)范目的: 使開(kāi)發(fā)流程更加規(guī)范化。 通用規(guī)范: TAB鍵用兩個(gè)空格代替(WINDOWS下TAB鍵占四個(gè)空格,LINUX下TAB鍵...

    付倫 評(píng)論0 收藏0
  • Web前端開(kāi)發(fā)規(guī)范文檔

    摘要:前端開(kāi)發(fā)規(guī)范文檔規(guī)范目的使開(kāi)發(fā)流程更加規(guī)范化。中的非注釋類中文字符須轉(zhuǎn)換成編碼使用,以避免編碼錯(cuò)誤時(shí)亂碼顯示。文件規(guī)范文件名用英文單詞,多個(gè)單詞用駝峰命名法。書(shū)寫(xiě)規(guī)范命名規(guī)范。圖片規(guī)范命名應(yīng)用小寫(xiě)英文數(shù)字組合,便于團(tuán)隊(duì)其他成員理解。 Web前端開(kāi)發(fā)規(guī)范文檔 規(guī)范目的: 使開(kāi)發(fā)流程更加規(guī)范化。 通用規(guī)范: TAB鍵用兩個(gè)空格代替(WINDOWS下TAB鍵占四個(gè)空格,LINUX下TAB鍵...

    Chiclaim 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<