为了账号安全,请及时绑定邮箱和手机立即绑定

VSCode Go 扩展错误加载具有私有存储库依赖项的工作区

VSCode Go 扩展错误加载具有私有存储库依赖项的工作区

Go
饮歌长啸 2022-10-10 19:43:53
一切正常,直到我添加了一个私有存储库的依赖项。我注意到自动完成功能停止工作,并且 vscode 有一个错误通知:Error loading workspace: err: exit status 1: stderr: go:bitbucket.org/my-group/my-private-repo@v0.0.0-20210512194559-2c29669c4ecc: 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/my-private-repo@v0.0.0-20210512194559-2c29669c4ecc: 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个赞

  1. 它会尝试获取您的依赖项的来源,以便为您生成实际的建议。它想要加载源 go 模块样式,我猜你的依赖项位于 GOPATH 中。您希望它能够优雅地处理连接错误,并且仍然为它可以访问的代码提供补全,所以这可能是一个错误,考虑在 github 上创建一个问题(我不知道是哪个项目)。

  2. 在这种情况下,通过执行以下修复,您也可以将 go mod 用于私有依赖项,而不必以“旧式”方式手动管理依赖项。Go 模块默认使用 Git,您可以通过将以下内容添加到全局 git 配置文件来指示 git 始终使用 SSH 而不是 HTTPS:

[url "git@bitbucket.org:"]
    insteadOf = https://bitbucket.org/

假设您不需要任何特殊配置来进行普通的 git over ssh 操作,则应该自动使用您的私钥。

  1. Go 模块支持通过供应商目录包含依赖项。如果您将依赖项放在那里,代码完成应该使用它而不是尝试下载它。但我无法确认这一点,从未尝试过


查看完整回答
反对 回复 2022-10-10
  • 1 回答
  • 0 关注
  • 97 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信