包裹 ID 規(guī)格
包裹 ID 規(guī)格
包 ID 規(guī)范
Cargo 的子命令經(jīng)常需要引用依賴關(guān)系圖中的特定包來(lái)進(jìn)行各種操作,例如更新,清理,構(gòu)建等。為了解決這個(gè)問(wèn)題,Cargo 支持包 ID 規(guī)范。規(guī)范是一個(gè)字符串,用于唯一地引用依賴關(guān)系圖中的一個(gè)包.
規(guī)范語(yǔ)法
規(guī)范語(yǔ)法
包 ID 規(guī)范的形式語(yǔ)法是:
pkgid := pkgname
| [ proto "://" ] hostname-and-path [ "#" ( pkgname | semver ) ]
pkgname := name [ ":" semver ]
proto := "http" | "git" | ...
這里,括號(hào)表示內(nèi)容是可選的.
示例規(guī)格
規(guī)范示例
這些都可以是對(duì)foo
包的引用,版本1.2.3
,來(lái)自注冊(cè)表crates.io
身份證明 | 名稱 | 版本 | 網(wǎng)址 |
---|---|---|---|
foo | foo | * | * |
foo:1.2.3 | foo | 1.2.3 | * |
crates.io/foo | foo | * | *://crates.io/foo |
crates.io/foo#1.2.3 | foo | 1.2.3 | *://crates.io/foo |
crates.io/bar#foo:1.2.3 | foo | 1.2.3 | *://crates.io/bar |
http://crates.io/foo#1.2.3 | foo | 1.2.3 | http://crates.io/foo |
規(guī)格簡(jiǎn)明
規(guī)范的簡(jiǎn)潔
這樣做的目的是用簡(jiǎn)潔和詳盡的語(yǔ)法來(lái)引用依賴圖中的包。而不明確的引用可以指代一個(gè)或多個(gè)包。若使用相同的規(guī)范會(huì)引用多個(gè)包,那大多數(shù)命令都會(huì)生成錯(cuò)誤。
更多建議: