将 Go 与 GitLab 子组结合使用:问题和解决方案
当尝试使用 Go 的依赖管理工具时, go get 或 go dep,组织成子组的私有 GitLab 存储库时,用户可能会遇到错误,指示远程存储库是无法访问。
问题
出现此错误是因为 GitLab 有意增强私有存储库的安全性。如问题 #1337 中所述,GitLab 建议将“.git”添加到 URL 作为解决方法。
解决方案
以下综合解决方案可解决该问题:
创建 .netrc 文件: 在主目录中配置一个包含以下内容的“.netrc”文件:
machine gitlab.com login <your gitlab username> password <the token created in step 1>
保护 .netrc 文件: 以确保安全性,将 .netrc 文件的权限设置为 600:
chmod 600 ~/.netrc
用法:
对于 go get:
go get gitlab.com/<company>/<subgroup>/<project>
为了去dep:
dep ensure -add gitlab.com/<company>/<subgroup>/<project>
注意:对于在私有主机名上安装 GitLab,请适当替换“gitlab.com”。
实施此解决方案后,您可以有效地使用具有私有 GitLab 子组存储库的 Go 依赖管理工具。
以上是如何将'go get”和'go dep”与私有 GitLab 子组存储库一起使用?的详细内容。更多信息请关注PHP中文网其他相关文章!