国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Golang > 正文

利用dep代替go get獲取私有庫的方法教程

2020-04-01 19:02:18
字體:
來源:轉載
供稿:網友

前言

go/58136.html">go get 用來動態獲取遠程代碼包的,目前支持的有BitBucket、GitHub、Google Code和Launchpad。這個命令在內部實際上分成了兩步操作:第一步是下載源碼包,第二步是執行go install。下載源碼包的go工具會自動根據不同的域名調用不同的源碼工具,對應關系如下:

  • BitBucket (Mercurial Git)
  • GitHub (Git)
  • Google Code Project Hosting (Git, Mercurial, Subversion)
  • Launchpad (Bazaar)

go get 的參數說明:

  • -d 只下載不安裝
  • -f 只有在你包含了-u參數的時候才有效,不讓-u去驗證import中的每一個都已經獲取了,這對于本地fork的包特別有用
  • -fix 在獲取源碼之后先運行fix,然后再去做其他的事情
  • -t 同時也下載需要為運行測試所需要的包
  • -u 強制使用網絡去更新包和它的依賴包
  • -v 顯示執行的命令

注意:這里的 –v 參數對我們分析問題很有幫助。

但用過的人都知道,go get 功能比較弱,無法獲取分支,標簽,特定版本,fork, 而 dep 可以做到。dep 還可以獲取私有庫。

用 dep 代替 go get 來獲取私有庫

用 gitee.com 私有庫作測試。創建 gogettest 庫。

可用:

go get -u gitee.com/jinq0123/gogettest

如果改為私有庫則失敗:

λ go get -v gitee.com/jinq0123/gogettestFetching https://gitee.com/jinq0123/gogettest?go-get=1Parsing meta tags from https://gitee.com/jinq0123/gogettest?go-get=1 (status code 403)package gitee.com/jinq0123/gogettest: unrecognized import path "gitee.com/jinq0123/gogettest" (parse https://gitee.com/jinq0123/gogettest?go-get=1: no go-import meta tags ())

利用 dep 工具取私有庫

https://github.com/golang/dep

安裝dep

go get -u github.com/golang/dep/cmd/dep

初始化

在項目目錄下運行:

dep init

生成 Gopkg.toml 和 Gopkg.lock

添加強制(constraint)

在 Gopkg.toml 中添加:

[[constraint]] branch = "master" name = "gitee.com/jinq012345/gogettest" source = https://gitee.com/jinq0123/gogettest.git

source 強制使用 https 來獲取 gotgettest 庫。

注意庫名改成了 jinq012345, 這樣導入:

imort "gitee.com/jinq012345/gogettest"

name和source的設置可支持從 fork 庫獲取。

獲取gogettest庫

dep ensure

會彈出 https 的登錄用戶名和密碼輸入框。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永泰县| 通海县| 平塘县| 郎溪县| 德保县| 阳春市| 当涂县| 休宁县| 百色市| 海口市| 安庆市| 潮安县| 阿瓦提县| 界首市| 龙山县| 太康县| 华蓥市| 保亭| 游戏| 开原市| 永嘉县| 锦州市| 徐水县| 中超| 扶沟县| 巴马| 广水市| 安义县| 三亚市| 康平县| 会理县| 志丹县| 卫辉市| 宜春市| 揭东县| 辽中县| 石棉县| 永嘉县| 西宁市| 安溪县| 隆子县|