Glide命令,如何使用glide,glide.lock

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

預覽目錄

  • glide create (別名 init)
  • glide config-wizard
  • glide get [package name]
  • glide update (別名 up)
  • glide install
  • glide novendor (別名 nv)
  • glide name
  • glide list
  • glide help
  • glide –version
  • glide mirror

以下是Glide命令,其中大部分命令是協助您管理工作區。

glide create (別名 init)

初始化新工作區。除此之外,這會建立一個glide.yaml檔案,同時試圖猜測 package 和版本。例如,如果你的項目使用Godep,它將使用 Godep 指定的版本。Glide足夠智能去掃描您的程式碼程式庫,檢測正在使用的 package,無論有沒有指定其他的包管理器。

$ glide create[INFO]  Generating a YAML configuration file and guessing the dependencies[INFO]  Attempting to import from other package managers (use --skip-import to skip)[INFO]  Scanning code to look for dependencies[INFO]  --> Found reference to github.com/Masterminds/semver[INFO]  --> Found reference to github.com/Masterminds/vcs[INFO]  --> Found reference to github.com/codegangsta/cli[INFO]  --> Found reference to gopkg.in/yaml.v2[INFO]  Writing configuration file (glide.yaml)[INFO]  Would you like Glide to help you find ways to improve your glide.yaml configuration?[INFO]  If you want to revisit this step you can use the config-wizard command at any time.[INFO]  Yes (Y) or No (N)?n[INFO]  You can now edit the glide.yaml file. Consider:[INFO]  --> Using versions and ranges. See https://glide.sh/docs/versions/[INFO]  --> Adding additional metadata. See https://glide.sh/docs/glide.yaml/[INFO]  --> Running the config-wizard command to improve the versions in your configuration

這裡提到的設定精靈可以在這裡運行或者以後手動運行。此嚮導可協助您找出可用於依賴項的版本和範圍。

glide config-wizard

這將運行一個嚮導,掃描依賴關係並檢索其上的資訊,以提供可以互動選擇的建議。例如,它可以發現依賴關係是否使用語義版本,並協助您選擇要使用的版本範圍。

glide get [package name]

你可以通過glide get下載一個或多個包到你的vendor目錄,並會自動加入到glide.yml檔案中。

$ glide get github.com/Masterminds/cookoo

當使用glide get時,它將內省所列出的軟體包來解決它的依賴性,包括使用Godep,GPM,Gom和GB設定檔。

glide get命令可以使用包名稱傳遞一個版本或範圍。 例如:

$ glide get github.com/Masterminds/cookoo#^1.2.3

版本通過錨()與包名稱分隔開。如果未指定版本或範圍,並且依賴關係使用語義版本 Glide 將提示您詢問是否要使用它們。

glide update (別名 up)

下載或更新glide.yml檔案中列出的所有庫,並將它們放在vendor目錄中。它還將遞迴遍曆依賴包以擷取任何所需的配置並在任何配置中讀取。

$ glide up

這將遞迴在尋找由Glide,Godep,gb,gom和GPM管理的其他項目的包。當找到這些包時,將根據需要安裝這些包。

將建立或更新glide.lock檔案,並將依賴關係固定到特定版本。例如,如果在glide.yaml檔案中將版本指定為範圍(例如,^ 1.2.3),它將被設定為glide.lock檔案中的特定提交標識。這允許可重複安裝(請參閱glide install)。

要從已提取的包中刪除任何嵌套的vendor/目錄,請參見-v標誌。

glide install

當你想從glide.lock檔案安裝特定的版本使用glide install

$ glide install

這將讀取glide.lock檔案,警告你如果它沒有綁定到glide.yaml檔案,並安裝commit id特定的版本。

glide.lock檔案不綁定到glide.yaml檔案時,如有更改,它將提供警告。運行glide up將在更新相依樹狀結構時重新建立glide.lock檔案。

如果沒有glide.lock檔案存在glide install將執行update並產生 lock 檔案。

要從已提取的包中刪除任何嵌套的vendor/目錄,請參見-v標誌。

glide novendor (別名 nv)

當你運行go test ./...這樣的命令時,它會遍曆所有的子目錄,包括vendor目錄。當你測試你的應用程式時,你可能想測試你的應用程式檔案,而不需要運行所有依賴項及其依賴關係的測試。這是novendor命令進來的地方。它列出除了vendor以外的所有目錄。

$ go test $(glide novendor)

這將對您的項目的所有目錄(vendor目錄除外)運行go test

glide name

當你使用 Glide 編寫指令碼時,有時你需要知道你正在使用的包的名稱。glide name返回glide.yaml檔案中列出的軟體包的名稱。

glide list

Glide 的list命令顯示項目匯入的所有包的按字母順序排列的列表。

$ glide listINSTALLED packages:    vendor/github.com/Masterminds/cookoo    vendor/github.com/Masterminds/cookoo/fmt    vendor/github.com/Masterminds/cookoo/io    vendor/github.com/Masterminds/cookoo/web    vendor/github.com/Masterminds/semver    vendor/github.com/Masterminds/vcs    vendor/github.com/codegangsta/cli    vendor/gopkg.in/yaml.v2

glide help

列印 glide 協助

$ glide help

glide –version

顯示版本資訊

$ glide --versionglide version 0.12.0

glide mirror

鏡像提供了將 repo 位置替換為作為原始鏡像的另一位置的能力。當您希望擁有連續整合(CI)系統的緩衝時,或者如果您要在本地位置的依賴項上工作時,這是非常有用的。

鏡像儲存在GLIDE_HOME中的mirrors.yaml檔案中。

到管理器鏡像的三個命令是listsetremove

在表單中使用set

glide mirror set [original] [replacement]

glide mirror set [original] [replacement] --vcs [type]

例如:

$ glide mirror set https://github.com/example/foo https://git.example.com/example/foo.git$ glide mirror set https://github.com/example/foo file:///path/to/local/repo --vcs git

請在表單中使用remove

glide mirror remove [original]

例如:

$ glide mirror remove https://github.com/example/foo

本文連結:https://deepzz.com/post/glide-package-management-command.html,參與評論 »

--EOF--

發表於 2017-02-09 22:36:00,並被添加「glide、golang包管理」標籤。

本站使用「署名 4.0 國際」創作共用協議,轉載請註明作者及原網址。更多說明 »

提醒:本文最後更新於 199 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.