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

当 git clone 工作时,Go mod tidy 在私有存储库上失败

当 git clone 工作时,Go mod tidy 在私有存储库上失败

Go
慕妹3146593 2022-12-19 21:04:21
我将我的 ssh 密钥放在 github 中,因此git clone适用于某个私有存储库;但go mod tidy在尝试访问同一存储库时失败,并显示如下错误消息。我可以使用帮助来解决这个问题。go mod tidy来自(编辑私有存储库的名称,但逐字记录)的错误消息是:    github.com/[private repository path]: cannot find module providing package github.com/[private repository path]: module github.com/[private repository path]: git ls-remote -q origin in /mnt/dependencies/gopath/pkg/mod/cache/vcs/a1f499df6a9855aecdc77bda31504008583a3268fdd403799aade71bb47df7d2: exit status 128:fatal: 'origin' does not appear to be a git repositoryfatal: Could not read from remote repositoryPlease make sure you have the correct access rightsand the repository exists.成功的 git clone 命令(再次编辑私有存储库)是:git clone git@github.com:[private repository path].git我的.gitconfig文件是(删除了我的姓名和电子邮件):[user]    name = [my name]    email = [my email][url "github.com:"]    insteadOf = https://github.com/[core]    excludesfile = /workdir/.gitignore其他可能有所作为的事情:我在 Docker 容器中以 root 身份运行命令。我尝试使用与 Docker 容器go mod tidy相同的密钥在我的主机上运行~/.ssh,我得到了登录提示,github 不再支持(他们需要 SSH 密钥或个人访问令牌)。我的 gitconfig 中的电子邮件与我放在 github.com 上的公钥中给出的电子邮件匹配。第二个相关问题:我可以运行的事实是否git clone排除了错误上传到 github 的密钥,以及忘记为 github 上的密钥启用 SSO?这是一个类似的问题,但它涉及个人访问令牌而不是 ssh 密钥:`go mod tidy` fails to download private GitHub repository
查看完整描述

2 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

我在 Docker 容器中以 root 身份运行命令。

然后确保它确实访问/root/.ssh与您在常规帐户中使用的密钥相同的密钥(在 中)。

并检查 Git 全局配置设置是否实际包含您的insteadOf指令。

~/.ssh尝试使用与 Docker 容器相同的密钥在我的主机上运行 go mod tidy ,我得到了登录提示。

这意味着公钥未正确注册到 GitHub 用户配置文件,或者所述用户无权访问存储库。


查看完整回答
反对 回复 2022-12-19
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

我找到了我的问题的答案,但它开启了我在问题中遗漏的一个事实。

直到第二天早上,我才意识到我的 Docker 映像中的 golang 版本高于用于填充的版本$GOPATH(或者至少我没有意识到这有多么重要)。为了解决这个问题,我删除了下面的所有内容$GOPATH并重新运行go mod tidy没有问题。

VonC 的回答中的清单很有用,而且更切合问题的要点,所以我接受了。但我会为遇到这篇文章的任何人添加:

“golang 的版本是否与go mod tidypopulated 不同$GOPATH?”


查看完整回答
反对 回复 2022-12-19
  • 2 回答
  • 0 关注
  • 302 浏览
慕课专栏
更多

添加回答

举报

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