7

所以我有一个私人回购,我的main.go进口。当我进行构建时出现此错误:

找不到路径的模块

我需要为私人回购做任何特别的事情吗?我一直在谷歌搜索,找不到任何好的信息。它适用于 dep。

4

4 回答 4

9

做这个

git config --global --add url."git@your-repo.com:".insteadOf "https://your-repo.com/"
export GOPRIVATE='your-repo.com'

确保您的 git clone 通过 ssh 工作。

于 2020-06-08T10:53:34.987 回答
2

(从这个 SO Question复制的答案)

我在 Medium: Go Modules with Private Git Repositories上为此写了一个解决方案。

我们处理它的方式与Alex Pliutau的回答基本相同,该博客更详细地介绍了如何使用来自 GitHub/GitLab/BitBucket 的令牌设置 git config 的示例。它还介绍了一个工作 Dockerfile 示例,用于使用带有私有 repos 的模块。

GitLab 的相关位:

git config --global \
  url."https://oauth2:${personal_access_token}@privategitlab.com".insteadOf \
  "https://privategitlab.com"

#or 

git config --global \
  url."https://${user}:${personal_access_token}@privategitlab.com".insteadOf \
  "https://privategitlab.com"

我希望它会有所帮助。

于 2019-06-02T05:56:12.593 回答
1

您应该使用 SSH 密钥来获取您的存储库,检查您的 SSH 密钥是否也在系统钥匙串中:

ssh-add -K ~/.ssh/id_rsa

于 2018-09-06T18:05:49.953 回答
0

鉴于这样的私人仓库经常处于积极开发中,我个人只是将它克隆到我的“正确”位置,$GOPATH并像使用任何其他项目一样使用源代码管理(例如 git)。在 Rodrigo 的回答中添加 SSH 密钥很棒,但是如果您无论如何都在积极开发私有存储库,那么将其克隆到正确目录的额外步骤绝不是一个困难的步骤,而不是能够做到go get这一点。

因此,例如,对于托管在 Github 上的私人回购,我cd$GOHOME/src/github.com/git-username-for-repogit clone the-repo

于 2018-09-06T18:21:06.637 回答