zoukankan      html  css  js  c++  java
  • 本地ssh key连接多个git账号

    在开发过程中,可能需要在本地同时连接到多个gitlab账户,但是一个用户的ssh key只能连接到一个git账户,这就需要创建多个ssh key,分别连接到不同的账户。具体步骤如下:
    1.生成ssh key
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
     
      
    默认生成的key为 ~/.ssh/id_rsa,生成的两个key名称需要不同,这里名称设为id_rsa_inner和id_rsa_outer。
    命令执行完后会在~/.ssh/目录下生成id_rsa_xxx和id_rsa_xxx.pub文件。
     
    2.在git中添加ssh key
    以github为例,点击settings —> SSH keys and GPG keys —> New SSH key,将id_rsa_outer文件中的内容添加进来。
    同理,在内部git中添加id_rsa_inner ssh key。
     
    3.本地配置
    在~/.ssh/目录下创建config文件,内容如下:
     Host github.com                                                                  
         HostName github.com                                                          
         PreferredAuthentications publickey                                           
         IdentityFile ~/.ssh/id_rsa_outer                                            
                                                                                     
    Host git.xxx.com                                                              
         HostName git.xxx.com                                                    
         PreferredAuthentications publickey                                           
         IdentityFile ~/.ssh/id_rsa_inner   
     
    其中Host为别名,HostName为git的地址。即将本地的两个ssh key与不同的git仓库绑定起来。
     
    4. 测试连接
    ssh -T git@github.com
     
    如果出现以下内容,则表示连接成功。
    Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.
     
     
    注:可以使用 ssh -vT git@github.com 开启Debug,查看具体的连接过程。
  • 相关阅读:
    VMware12中CentOS7网络设置
    技术牛人
    PHP程序员如何突破成长瓶颈(php开发三到四年)
    php多线程
    go git 安装配置与使用 (windows 7 64bit)
    php内核和瓦力上线部署
    VM虚拟机下安装Centos7.0图文教程
    php结合redis实现高并发下的抢购、秒杀功能
    php foreach循环中unset后续的键值问题
    excle导入
  • 原文地址:https://www.cnblogs.com/lolau/p/9921780.html
Copyright © 2011-2022 走看看