所以基本上,我有一个Openshift项目,在Git上,用'Go get'下载所有库并动态构建项目,所以,我有一些代码,我不希望别人看到我的自己的库,并为了正确编译,代码需要从github.com或其他回购,所以我创建了一个私人bitbucket.org repo,现在,作为一个公共回购它工作正常,但当我尝试'从我的私人回购中获取,它给了我'Forbidden 403'
如何避免这种情况发生? 感谢您阅读并度过美好的一天!
答案 0 :(得分:56)
go get
在内部使用git
。以下一个内容将使git
和go get
通过SSH克隆您的包。
Github上:
git config --global url."git@github.com:".insteadOf "https://github.com/"
到位桶:
git config --global url."git@bitbucket.org:".insteadOf "https://bitbucket.org/"
答案 1 :(得分:3)
除设置其他人描述的git config
外,我还必须设置GOPRIVATE
。
步骤1。git config --global url."git@bitbucket.<YOUR-COMPANY>".insteadOf "https://bitbucket.org/<YOUR-COMPANY>"
第2步。export GOPRIVATE=bitbucket.org/<YOUR-COMPANY>
GOPRIAVTE
记录在这里:https://golang.org/cmd/go/#hdr-Module_configuration_for_non_public_modules
答案 2 :(得分:0)
Ammar Bandukwala's answer是正确的,但是如果您发现自己位于关闭了SSH传出端口(22)的防火墙后面,则可以改用SSH over HTTPS端口(443):
git config --global url."ssh://git@altssh.bitbucket.org:443/<account_name>".insteadOf "https://bitbucket.org/<account_name>"