zoukankan      html  css  js  c++  java
  • gitlab配置sshkey免密拉取代码

    应用情景

            当前很多公司都选择git作为代码版本控制工具,然后自己公司搭建私有的gitlab来管理代码,我们在clone代码的时候可以选择https协议,当然我们亦可以选择ssh协议来拉取代码。但是网上很少找到如何用git客户端生成ssh key,然后配置在gitlab,那么本文,我们就来聊一聊如何本地git客户端生成ssh key,然后配置在gitlab里,而后使用ssh协议进行提交和拉取git远程仓库的代码。

    配置方式

    1. 打开本地安装好的git bash,使用如下命令生成ssh公钥和私钥对

    ssh-keygen -t rsa -C 'xxx@xxx.com' 然后一路回车(-C 参数是你的邮箱地址)

    当然passphrase可以设置密码,有的公司要求要有密码设置限制。

    即使设置也就输入一次即可。

    2.然后打开~/.ssh/id_rsa.pub文件(~表示用户目录,比如我的windows就是C:Usersmazq),复制其中的内容

    3. 打开gitlab,点击头像,找到Settings-->SSH Keys--->Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字,点击Add key按钮

    4. 到此就完成了gitlab配置ssh key的所有步骤,我们就可以愉快的使用ssh协议进行代码的拉取以及提交等操作了

    验证命令:ssh -T git@git-group.xxxx.com

    5. 再试一下拉取代码和提交代码,应该就不需要输入密码了或者只输入一次密码。

    异常情况

    git clone git@xxx.git是可用的,git clone https是失败的或者一直弹要求输入git账号、密码之后也失败。

    解决方案:

    登录gitlab之后,配置好ssh key相关功能。

    点击头像,找到Settings-->Password--->重置单点登录代码。

    使用个人密码,不用sso。

    总结

    我们为什么要使用ssh协议呢?因为ssh更加安全,然后更加方便,比如我们公司用的https协议,那么如果你是使用http协议管理代码,那么需要修改所有的项目中的git地址变成https,这会把我们给逼疯的!但是如果我们一开始就是用ssh协议,这不需要任何的修改,简直不能再爽一点了。

    作者:森林木马

    -------------------------------------------

    特此声明:所有评论和私信都会在第一时间回复。也欢迎朋友们指正错误,共同进步!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

    个性签名:好记性不如勤随笔,好随笔还请多关注!

  • 相关阅读:
    Java集合一
    集合类视图
    NIO
    IO补充
    线程图
    线程池
    Callable
    element-ui upload组件上传图片时限制图片宽高
    vue-router 使用a链接跳转至二级子页面偶尔会出现地址栏看不见路由和参数的情况
    vue中引入jquery报错问题
  • 原文地址:https://www.cnblogs.com/owenma/p/14691404.html
Copyright © 2011-2022 走看看