zoukankan      html  css  js  c++  java
  • 一台电脑上Github、Gitlab多账户管理SSH Key冲突的解决方案

    解决方案

    方案一:同一个邮箱

    由于邮箱是识别的唯一手段,那么自然的,这两者采用同一个邮箱,生成的 public key 也会是同一个,上传到 Github 或者 Gitlab 上面,在 Git 的配置中 ,设置好 Global 的配置 :git config –global user.name ‘EricYin’ && git config –global user.email ‘layupbolon@sina.com’ 进行日常的开发是没有问题的。

    实际生活中采用同一个邮箱的可能性并不是太大,这就引出了方案二。

    方案二:基于config文件

    所谓的方案二,原理上就是对 SSH 协议配置 config 文件,对不同的域名采用不同的认证密钥。

    1.配置 Git 用户名、邮箱

    #全局配置,Github仓库中默认使用此配置
    git config --global user.name 'layupbolon' && git config --global user.email 'layupbolon@sina.com' 
    
    # 团队项目配置,每次新创建一个项目,需要执行下
    git config --local user.name 'EricYin' && git config --local user.email 'xxxxxx@xxxx.com'
    

    2. 生成 ssh key 上传到 Github/Gitlab

    ssh key 默认生成后保存在 ~/.ssh/目录下 ,默认为 id_rsa 和 id_rsa.pub 两个文件,由于我们需要分开配置,所以这么做:

    # 生成公钥、密钥的同时指定文件名,Gitlab使用
    ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitlab -C "xxxxxx@xxxx.com"
    
    # 生成默认,Github使用
    ssh-keygen -t rsa -C "layupbolon@sina.com"
    

    在执行完以上命令后会生成如下几个文件

    3. 配置 config 文件

    在 ~/.ssh目录下,如果不存在,则新建 touch ~/.ssh/config文件 ,文件内容添加如下:

    Host git@*.corp.xxx.com
    HostName http://*.corp.xxx.com
    IdentityFile ~/.ssh/id_rsa.gitlab
    User EricYin
    
    Host git@github.com
    HostName https://github.com
    IdentityFile ~/.ssh/id_rsa
    User layupbolon
    

    4. 上传public key 到 Github/Gitlab

    以gitlab为例:

    登录gitlab
    打开profile setting中的ssh keys
    在上图位置填入~/.ssh/id_rsa.gitlab.pub中的内容

    5. 验证是否OK

    看到这些 Welcome 信息,说明就是 OK的了。

    建议在clone项目的时候使用ssh方式,如果使用git工具的话,例如sourceTree等,可以在项目上切换ssh,或者切换remote,以上!

  • 相关阅读:
    Multi-Tenancy模式,基础服务大规模扩张的时候,是应该推进了。
    Python中的tuple
    Create and Call HttpHandler in SharePoint
    各种数据库(oracle、mysql、sqlserver等)在Spring中数据源的配置和JDBC驱动包
    BNU 34986 Football on Table
    Effective JavaScript Item 31 优先使用Object.getPrototypeOf,而不是__proto__
    POJ 3080 Blue Jeans (后缀数组)
    HDU 2586 How far away ?(LCA模板 近期公共祖先啊)
    自己主动化的在程序中显示SVN版本号
    在Mac OS X中部署Tomcat的经验
  • 原文地址:https://www.cnblogs.com/Tavi/p/12514047.html
Copyright © 2011-2022 走看看