Git Access Token 免密clone

431 阅读1分钟
一、背景

公司的自动化打包平台,不再允许使用账号密码的方式拉取代码,导致脚本执行Git操作的时候失败。

二、方案分析

方案一:使用SSH,但是需要动态处理公私钥问题,而且打包机器每次都是重新生成,故不采纳这种方式。

方案二:使用Access Token,适用于HTTP/HTTPS的方式。

三、Access Token实操

以GitLab为例,进入设置页面,点击左侧的Access Token目录,输入对应信息、选择权限后创建Token。

生成Access Token.jpg

Name:Token的名称 Expires at:有效期,不填即永久有效 Scopes:权限,按实际情况勾选

信息填完后,点击按钮创建,创建后会在页面顶部生成一个Token,务必复制保存下来,页面关闭后Token就消失了,需要重新生成。

四、Git命令的变化

原本的HTTP/HTTPS地址。

http://gitlab.xxx.net/xxx/demo.git

修改后,使用修改后的地址去操作clone等命令。

// 这里的name、token对应生成Access Token时,输入的name、生成的token信息
http://<name>:<token>@gitlab.xxx.net/xxx/demo.git