go get 安装gitlab私有包

  • 获取 gitlab 的 token

    进入 Gitlab—>Settings—>Access Tokens,然后创建一个 personal access token,这里权限最好选择只读 (read_repository)。

  • git 配置添加 access token

有了 access token 后,我们还需要在 git 中进行配置,这样才能 go get 下了私有仓库的包,需要把刚刚的 token 添加进 git 的请求头中,操作如下:

git config --global http.extraheader "PRIVATE-TOKEN: YOUR_PRIVATE_TOKEN"
  • 配置 git 将请求从 ssh 转换为 http
git config --global url."git@gitlab_url:groupName/projectName.git".insteadOf "https://gitlab_url/groupName/projectName.git"`

上面是通过命令修改配置,也可以像这样,直接修改配置文件~/.gitconfig,在里面添加如下配置:

[url "git@{{gitlab_url}}:"]
        insteadOf = https://{{gitlab_url}}/

注意:insteadof 中的参数是 https,因为不管目标地址是 http 还是 https,go get 默认使用 https 方式访问,因此我们要强制将 https 转换成 git 协议

  • 如果这样还拉不下来,就需要对 go 的一些环境变量进行配置

Bash (Liunx or macOS)#

# 配置 GOPROXY 环境变量
export GOPROXY=https://goproxy.io,direct

# 还可以设置不走 proxy 的私有仓库或组,多个用逗号相隔(可选)
export GOPRIVATE=git.mycompany.com,github.com/my/private

Powerbash (Windows)#

# 配置 GOPROXY 环境变量
$env:GOPROXY = "https://goproxy.io,direct"

# 还可以设置不走 proxy 的私有仓库或组,多个用逗号相隔(可选)
$env:GOPRIVATE = "git.mycompany.com,github.com/my/private"
本作品采用《CC 协议》,转载必须注明作者和本文链接