李刚的学习专栏

行胜于言,自强不息!纸上得来终觉浅,绝知此事要躬行!

Git生成多个ssh-keygen

作为新时代的开发者,大家一般会拥有自己的Github工程。同时公司又提供单独gitlab服务器,所以经常会遇到需要在同一设备下配置多个ssh key的情况,下述会阐述如何进行设置操作:

直接上手

第一步:生成指定名称的秘钥

$ ssh-keygen

git-ssh-keygen.png
首先 ssh-keygen 会确认密钥的存储位置(默认是 .ssh/id_rsa),然后它会要求你输入两次密钥口令。如果你不想在使用密钥时输入口令,将其留空即可(直接回车)。

需要注意的是这里必须输入指定的名称,不能使用默认名称,否则会相互覆盖(这是配置多个key的重点),如:id_rsa_idss

第二步:配置config文件

找到key的生成地方,如我的是/Users/ligang/.ssh,创建config文件(如果已存在,无需创建)。添加如下内容:

Host 192.168.0.45
    IdentityFile ~/.ssh/id_rsa.idss
    User ligang@xxx.com
字段 说明
Host 远程主机地址
IdentityFile 私钥的文件路径及文件名称
User 用户
Port 远程主机上连接的端口号
HostName 要登录的真实主机名。数字IP地址也是允许的

需要注意的是,默认的id_rsa并不需要配置!

第三步:复制新生成的公钥到服务器

git-ssh-pub
登录github或相关gitlab,进入相关的ssh添加页面(如,github添加地址为SSH and GPG keys),追加上述信息。

第四步:修改相关用户配置

如果不对用户相关配置修改,会默认以 --global配置的用户信息进行提交,所以需要进入指定文件夹,进行配置,覆盖全局的相关配置信息。

$ git config user.name "your name"
$ git config user.email "your email"

注意:不要加--global,否则会覆盖默认配置。
至此,大功告成,在不同的工程下互相不再冲突,可以直接获取或提交代码!

相关说明

秘钥信息

Git 服务器都使用 SSH 公钥进行认证,为了向 Git 服务器提供 SSH 公钥,如果某系统用户尚未拥有密钥,必须事先为其生成一份。 默认情况下,用户的 SSH 密钥存储在其 ~/.ssh 目录下。

用户信息

当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址。 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改:

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

git-config-user.png

上述就是在当前web工程中使用新的用户信息覆盖了全局配置的用户信息(重复的变量名,会使用后者)!
再次强调,如果使用了 --global 选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。

  • git config --list:查看配置信息
  • git config <key>:查看某一项的配置信息

参考地址:

阅读更多

扫码向博主提问

去开通我的Chat快问

ligang2585116

博客专家

纸上得来终觉浅,绝知此事要躬行!
  • 擅长领域:
  • javascript
  • git
  • 前端
版权声明:本文为博主原创文章,未经博主允许不得转载。转载请标明出处:http://blog.csdn.net/ligang2585116! https://blog.csdn.net/ligang2585116/article/details/79964976
个人分类: Git
上一篇深入理解ES6--用模块封装代码
下一篇单页应用优化--懒加载
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭