ubuntu下Go Mod和Go Vendor命令


go-mod

go module是Go1.11版本之后官方推出的版本管理工具,並且從Go1.13版本開始,go module將是Go語言默認的依賴管理工具

要啟用go module支持首先要設置環境變量GO111MODULE,通過它可以開啟或關閉模塊支持,它有三個可選值:off、on、auto,默認值是auto。

GO111MODULE=off禁用模塊支持,編譯時會從GOPATH和vendor文件夾中查找包。
GO111MODULE=on啟用模塊支持,編譯時會忽略GOPATH和vendor文件夾,只根據 go.mod下載依賴。
GO111MODULE=auto,當項目在$GOPATH/src外且項目根目錄有go.mod文件時,開啟模塊支持。

# 啟用 Go Modules 功能
export GO111MODULE=on

常用的go mod命令如下:

go mod download    下載依賴的module到本地cache(默認為$GOPATH/pkg/mod目錄)
go mod edit        編輯go.mod文件
go mod graph       打印模塊依賴圖
go mod init        初始化當前文件夾, 創建go.mod文件
go mod tidy        增加缺少的module,刪除無用的module
go mod vendor      將依賴復制到vendor下
go mod verify      校驗依賴
go mod why         解釋為什么需要依賴

Go Vendor

安裝go get -u github.com/kardianos/govendor

基礎命令

govendor init # 創建vendor目錄,創建vendor.json文件  
govendor add +external #生成依賴包  
govendor update +vendor # 更新vendor的包命令
init 	初始化 vendor 目錄
list 	列出所有的依賴包
add 	添加包到 vendor 目錄,如 govendor add +external 添加所有外部包
add PKG_PATH 	添加指定的依賴包到 vendor 目錄
update 	從 $GOPATH 更新依賴包到 vendor 目錄
remove 	從 vendor 管理中刪除依賴
status 	列出所有缺失、過期和修改過的包
fetch 	添加或更新包到本地 vendor 目錄
sync 	本地存在 vendor.json 時候拉去依賴包,匹配所記錄的版本
get 	類似 go get 目錄,拉取依賴包到 vendor 目錄

gopm使用

參考博文


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM