go依賴包管理工具vendor基礎


go依賴包管理工具vendor基礎

vendor是go的依賴包管理工具,主要用於管理項目中使用到的一些依賴。

它將項目依賴的包,特指外部包,復制到當前工程下的vendor目錄下,這樣go build的時候,go會優先從vendor目錄尋找依賴包。

將依賴的外部包引進工程下的vendor目錄,可以直接在其他機器直接編譯,而不用再去構建外部包的編譯環境,一個一個的go get獲取外部包。當然你也可以直接拷貝整個GOPATH下的第三方包源碼過來,也是起到了vendor相同的作用。

另外,防止了go get 重新拉取的外部包的版本可能和期望的不一致,從而導致編譯錯誤問題。

1. 安裝

go get -u -v github.com/kardianos/govendor

2. 使用

​ 使用vendor需要初始化,必須先進入項目目錄中,進行vendor目錄的初始化。

govendor init //執行命令初始化完成,此時項目目錄中便出現了vendor目錄,

3. 將當前go項目所依賴的包添加進vendor目錄進行管理

govendor add +external
或者 govendor add +e //表示將當前項目所依賴的外部包添加進vendor目錄進行關聯。此時vendor目錄中包含了整個項目所依賴的包。

4. govendor的部分命令

命令 功能
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 目錄

具體來看,這些包可能的類型如下:

5. 查看govendor命令幫助

govendor --help //govendor的命令幫助,里面可以找到自己需要的命令然后進行操作


免責聲明!

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



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