windows命令行获取gitlab私有包

golang私有包导入

  • github上的公有包导入比较常见,私有包导入方面的教程不多,这里记录一下自己遇到的问题
  • 没钱买Mac,开发环境是Windows

设置gitlab的public key

  1. 配置本地的git,username,email等。根据自己实际情况调整下边的参数。注意!操作都是在git bash上边!除非特殊说明

    $ git config --global user.name "your name"
    $ git config --global user.email "your email@address"
    //下边这条的含义是用ssh的时候用git而不是https
    $ git config --global url."git@address:".insteadOf "https://address.com"
  2. 然后就是在gitlab上边添加自己生成的public key。操作步骤。gitlab的文档说得很清楚。

设置代理去墙外边取包

  1. 正常来说,添加key之后,就可以把gitlab的项目拉到本地。但是golang项目比较特殊,我们希望用go get命令,把依赖的包也取过来。
  2. 这就意味着,需要在git bash中设置代理。注意,千万不要像我这么傻,用CMD的set 去设置http_proxy。

    $ export ALL_PROXY="socks5://127.0.0.1:1080"
  3. 直接像上边,按照Linux系统的习惯去设置代理。我用的是ssr。

遇到的一个报错

  1. 上边的步骤基本完整,最后go get自己的私有包就行。但是,因为我的项目是用module做依赖管理的,所以还需要在go.mod那级目录下执行go mod tidy。
  2. 报错信息:go modules disabled inside gopath/src by go111module=auto
  3. 我的解决办法。从报错信息来看就是变量go111module的值没设置对。改一下就OK了。

    $ export GO111MODULE=on

相关推荐