配置Go适应 Github私有库访问

git 访问Github 私有库,需要到Github生成一个访问token。方法是

1、到Github 的 Dashboard 菜单栏,选择最右边的图标按钮

2、在出现的菜单中,选择“Settings”

3、接着,在左边的菜单中,选择“Developer Settings”

4、接着选择 “Personal access tokens”-” Tokens (classic)”

5、点击“Generate new token”,进入下一页面,选择令牌权限,尽量使用最小权限

至少要选择repo,建议再选上,read:org 和 workflow

6、选择好所需权限;设置令牌有效时长,从安全角度建议设置短时;输入备注,然后就可以点击页末的”Generate token” 按钮,就可以生成一个访问令牌了。要注意,生成的令牌只显示这一次,要记得拷贝走,下回进来就再也看不见了,只能再重新生成一个。

7、使用生成好的令牌,在$HOME目录下,建立一个文件 .netrc,内容如下,实践发现 login 后的字符串内容是啥无所谓。

machine github.com 
        login oauth2
        password 你的访问令牌字符串

这样,git 就可以正常访问私有库了。

在Go环境下,还需要设置 GOPRIVATE 环境变量,以通知Go在下载包时知道哪些包是私有库,从而使用访问令牌,否则在 go get 包时会出现”fatal: could not read username for ‘https://github.com’: terminal prompts disabled” 错误。

go env -w GOPRIVATE=github.com/你的github用户名/*

发表评论