亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

完美解決golang go get私有倉庫的問題

 更新時間:2021年05月04日 14:00:17   作者:smokelee  
這篇文章主要介紹了完美解決golang go get私有倉庫的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

解決golang go get gitlab私有倉庫的問題(1.13)

1. 問題描述

require ( 
 git.xxxxxxx.com/middle/user v0.0.1
)

go mod tidy 導(dǎo)入包失敗

go get git.xxxxxxx.com/middle/user 失敗

go build 有CHECKSUM過程,無法編譯

2. 現(xiàn)象分析

go get 不支持代碼支持之外的倉庫。并且git 調(diào)用鏈過程采取了https

下載過程如果機器設(shè)置了GOPROXY,會導(dǎo)致下載失敗

編譯過程會導(dǎo)致CHECKSUM失敗

3. 物料

物料 說明
git.xxxxxxx.com 私有倉庫
middle/user.git 用戶服務(wù)模塊

方案

1、給釋出的倉庫打tag比如v0.0.1,這樣倉庫地址就可以被識別

2、export GOPRIVATE=git.xxxxxxx.com

go build的時候系統(tǒng)就不會用GOPROXY以及不再校驗SUM

3、調(diào)整git https===>ssh,注意username換成自己的用戶名

[url "username@git.xxxxxxx.com"]
    insteadOf = https://git.xxxxxxx.com

結(jié)論

這個問題,google 堪稱一絕,夠任性

補充:go get拉取私有項目,遇到 404 Not Found解決辦法

問題

利用go module進(jìn)行包管理的時候,要獲取遠(yuǎn)程倉庫的最新包,使用go get+項目名獲取,提示404 Not Found,如圖:

在這里插入圖片描述

原因及解決辦法 原因

這是由于go get在進(jìn)行獲取遠(yuǎn)程包的時候,沒有指定用戶以及密碼,導(dǎo)致沒有權(quán)限,故失敗

辦法

go get時添加“-insecure”參數(shù),如圖:

在這里插入圖片描述

補充:golang 配置私有倉庫

配置使用ssh 訪問的倉庫

1. go mod 根據(jù)go.mod拉取依賴庫時

會使用https的方式。為了方便我們也可以通過配置git 全局配置來使用 ssh的方式拉取依賴,下面是配置 https轉(zhuǎn)換為ssh的方式:

git config --global url."git@gitee.com:".insteadOf https://gitee.com/

2. 配置環(huán)境變量

來指定私有倉庫,用于不走代理的方式

go env -w GOPRIVATE=gitee.com

這里配置私有倉庫是gitee

3. 設(shè)置代理

go env -w GOPROXY=goproyx.io

常見錯誤:

1. 錯誤一

abc@Genricde helloworld % go get -u gitee.com/abc/helloworld/v3 go: gitee.com/abc/helloworld/v3@v3.0.1-5 requires gitee.com/abc/tsab@v0.0.0-20210208082057-adbeb3ca5366: invalid version: git fetch -f origin refs/heads/*:refs/heads/* refs/tags/*:refs/tags/* in /Users/abc/developer/golang/pkg/mod/cache/vcs/742008abb4987f237c93efc5ddde7db6dd8d1841fe94aea076046d86a92e26a7: exit status 128: fatal: could not read Username for 'https://gitee.com': terminal prompts disabled

這種錯誤為沒有配置 git 的https轉(zhuǎn)換為 ssh

2. 錯誤二

go: gitee.com/abc/helloworld@v0.0.0-20210121064045-46ac6dd9cdce requires gitee.com/abc/helloworld@v0.0.0-20210208023819-88ebb8c504ae/go.mod: verifying module: gitee.com/abc/helloworld@v0.0.0-20210208023819-88ebb8c504ae/go.mod: reading https://goproxy.io/sumdb/sum.golang.org/lookup/gitee.com/abc/tsab@v0.0.0-20210208023819-88ebb8c504ae: 410 Gone server response: not found: gitee.com/abc/helloworld@v0.0.0-20210208023819-88ebb8c504ae: invalid version: git fetch -f origin refs/heads/*:refs/heads/* refs/tags/*:refs/tags/* in /tmp/gopath/pkg/mod/cache/vcs/742008abb4987f237c93efc5ddde7db6dd8d1841fe94aea076046d86a92e26a7: exit status 128: fatal: could not read Username for 'https://gitee.com': terminal prompts disabled

這種錯誤是GOPRIVATE 設(shè)置錯誤,使得go去驗證庫的sum

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • 淺析Go常量為什么只支持基本數(shù)據(jù)類型

    淺析Go常量為什么只支持基本數(shù)據(jù)類型

    這篇文章主要來和大家一起討論一下Golang中常量為什么只支持基本數(shù)據(jù)類型,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2023-09-09
  • golang?Strings包使用總結(jié)

    golang?Strings包使用總結(jié)

    Go語言在處理字符串時,strings包提供了豐富的函數(shù),如常用的strings.Contains檢查是否包含子串,strings.Join拼接字符串?dāng)?shù)組,strings.Split切割字符串等,熟悉這些函數(shù)能有效提高編程效率,尤其是在算法競賽或筆試題中
    2021-03-03
  • 一文詳解Go語言中切片的底層原理

    一文詳解Go語言中切片的底層原理

    在Go語言中,切片作為一種引用類型數(shù)據(jù),相對數(shù)組而言是一種動態(tài)長度的數(shù)據(jù)類型,使用的場景也是非常多,所以本文主要來和大家聊聊切片的底層原理,需要的可以參考一下
    2023-06-06
  • Go-Swagger的踩坑記錄分享

    Go-Swagger的踩坑記錄分享

    用戶分享在Win10安裝Go-Swagger時遇到命令未識別問題,通過拉取源碼至GOPATH/pkg/mod目錄,執(zhí)行安裝命令生成swagger.exe,需將GOPATH/bin加入系統(tǒng)環(huán)境變量并重啟終端
    2025-07-07
  • Golang語言如何讀取http.Request中body的內(nèi)容

    Golang語言如何讀取http.Request中body的內(nèi)容

    這篇文章主要介紹了Golang語言如何讀取http.Request中body的內(nèi)容問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Golang使用Channel組建高并發(fā)HTTP服務(wù)器

    Golang使用Channel組建高并發(fā)HTTP服務(wù)器

    Golang 作為一門高效的語言,在網(wǎng)絡(luò)編程方面表現(xiàn)也非常出色,這篇文章主要介紹了如何使用 Golang 和 Channel 組建高并發(fā) HTTP 服務(wù)器,感興趣的可以了解一下
    2023-06-06
  • golang實現(xiàn)并發(fā)控制的方法和技巧

    golang實現(xiàn)并發(fā)控制的方法和技巧

    golang 是一門支持并發(fā)的編程語言,它提供了 goroutine 和 channel 等強大的特性,讓我們可以輕松地創(chuàng)建和管理多個執(zhí)行單元,實現(xiàn)高效的任務(wù)處理,在本文中,我們將介紹一些 golang 的并發(fā)控制的方法和技巧,希望對你有所幫助
    2024-03-03
  • Go并發(fā)編程中的錯誤恢復(fù)機制與代碼持續(xù)執(zhí)行實例探索

    Go并發(fā)編程中的錯誤恢復(fù)機制與代碼持續(xù)執(zhí)行實例探索

    這篇文章主要為大家介紹了Go并發(fā)編程中的錯誤恢復(fù)機制與代碼持續(xù)執(zhí)行實例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Golang信號處理及如何實現(xiàn)進(jìn)程的優(yōu)雅退出詳解

    Golang信號處理及如何實現(xiàn)進(jìn)程的優(yōu)雅退出詳解

    這篇文章主要給大家介紹了關(guān)于Golang信號處理及如何實現(xiàn)進(jìn)程的優(yōu)雅退出的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • go語言實現(xiàn)同步操作項目示例

    go語言實現(xiàn)同步操作項目示例

    本文主要介紹了go語言實現(xiàn)同步操作項目示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05

最新評論