一切正常,直到我添加了一個私有存儲庫的依賴項。我注意到自動完成功能停止工作,并且 vscode 有一個錯誤通知:Error loading workspace: err: exit status 1: stderr: go:bitbucket.org/my-group/[email protected]: reading https://api.bitbucket.org/2.0/repositories/my-group/my-private-repo?fields=scm: 403 Forbidden server response: Access denied. You must have write or admin access. go: bitbucket.org/my-group/[email protected]: reading https://api.bitbucket.org/2.0/repositories/my-group/my-private-repo?fields=scm: 403 Forbidden server response: Access denied. You must have write or admin access. : packages.Load error似乎 go 擴展正在嘗試訪問我的私人倉庫:為什么這對于代碼競爭能夠起作用是必要的?如果有必要,如何將我的 SSH 密鑰提供給 go 擴展?其他解決方法?
1 回答

一只斗牛犬
TA貢獻1784條經驗 獲得超2個贊
它會嘗試獲取您的依賴項的來源,以便為您生成實際的建議。它想要加載源 go 模塊樣式,我猜你的依賴項位于 GOPATH 中。您希望它能夠優雅地處理連接錯誤,并且仍然為它可以訪問的代碼提供補全,所以這可能是一個錯誤,考慮在 github 上創建一個問題(我不知道是哪個項目)。
在這種情況下,通過執行以下修復,您也可以將 go mod 用于私有依賴項,而不必以“舊式”方式手動管理依賴項。Go 模塊默認使用 Git,您可以通過將以下內容添加到全局 git 配置文件來指示 git 始終使用 SSH 而不是 HTTPS:
[url "[email protected]:"] insteadOf = https://bitbucket.org/
假設您不需要任何特殊配置來進行普通的 git over ssh 操作,則應該自動使用您的私鑰。
Go 模塊支持通過供應商目錄包含依賴項。如果您將依賴項放在那里,代碼完成應該使用它而不是嘗試下載它。但我無法確認這一點,從未嘗試過
- 1 回答
- 0 關注
- 134 瀏覽
添加回答
舉報
0/150
提交
取消