在一台电脑上配置多个不同的 ssh key

前言

如果拥有多个Git远程仓库,尤其是其中一个是工作中使用的仓库,只使用一个ssh key安全性很低,建议为不同Git远程仓库配置不同的ssh key。

预操作

非必须,但建议

  • 取消git全局设置

    1. git config --global --unset user.name
    2. git config --global --unset user.email
  • 为每个项目单独配置 user.name 和 user.email

    1. git config user.name "yourname"
    2. git config user.email "youremail"

    已经在本地存在的项目,只需再配置一下 user.name 和 user.email 即可,不需要额外的操作。

    注意 :这里配置的 name 和 email 要针对具体项目来配置,对应不同远程仓库的项目 name 和 email 可能并不一致。

SSH配置

  • 第一步 生成ssh key

    1. ssh-keygen -t rsa -f ~/.ssh/filename -C xxx@gmail.com

    ref : http://www.cnblogs.com/popfisher/p/5731232.html

    这里有两个参数, filenamexxx@gmail.com ,前者是生成ssh密钥文件的文件名,不同远程仓库取不一样的名字,比如 id_rsa_workid_rsa_githubid_rsa_gitee 等,后者是与远程仓库地址对应的邮箱,每个也可能不一样。

    按照以上命令,生成多个ssh的密钥,并把对应的公钥(如 id_rsa_github.pub 文件里面key)添加到相应远端。

  • 第二步 添加config文件

    在.ssh目录下,新建 config 文件(文件名就是 config),设定不同git服务器的key。

    第一项是默认项。这里重点是配置 Host 字段和 IdentityFile 字段,前者对应git服务器域名,后者为对应的ssh密钥文件。

    1. # github
    2. Host github.com
    3. HostName github.com
    4. User github
    5. IdentityFile ~/.ssh/id_rsa_github
    6. # gitee 开源中国
    7. Host gitee.com
    8. HostName gitee.com
    9. User gitee
    10. IdentityFile ~/.ssh/id_rsa_gitee

    设置完成之后,可以用 ssh -T git@github.com 命令检查配置是否成功。

参考文献

  1. 多个git账号之间的切换

  2. ssh-key 与 git账户配置以及多账户配置

  3. Git多账号登陆

原文链接:

https://www.cnblogs.com/jasongrass/p/11162918.html

Git多账号配置的更多相关文章

  1. 【亲测可用,亦可配置同一平台的不同账号,例如阿里云的两个不同账号】Windows下Git多账号配置,同一电脑多个ssh-key的管理

    Windows下Git多账号配置,同一电脑多个ssh-key的管理   这一篇文章是对上一篇文章<Git-TortoiseGit完整配置流程>的拓展,所以需要对上一篇文章有所了解,当然直接 ...

  2. git多账号配置,同时使用多个代码托管平台

    git多账号配置,同时使用多个代码托管平台:https://blog.csdn.net/pinnuli/article/details/81293071

  3. Windows下Git多账号配置,同一电脑多个ssh-key的管理

    这一篇文章是对上一篇文章<Git-TortoiseGit完整配置流程>的拓展,所以需要对上一篇文章有所了解,当然直接往下看也可以,其中也有一些提到一些基础的操作. <Git-Tort ...

  4. Git多账号配置,同一电脑多个ssh-key的管理

    为什么有这种需求? 在我们开发过程中,可能会遇到使用同一台机器,既要向公司git服务器提交代码,也要向gitlib或者gitee等 git仓库提交代码,2个仓库设置的用户名信息,不一样,此时需要用到多 ...

  5. 一台电脑,两个及多个git账号配置

    1. 生成两[三]个ssh公钥私钥 方法参照:http://www.cnblogs.com/fanbi/p/7772812.html第三步骤 假定其中一个是id_rsa, 另一个时id_rsa_two ...

  6. Windows下Git多账号ssh-key(复制自己用)

    Windows下Git多账号配置,同一电脑多个ssh-key的管理 这一篇文章是对上一篇文章<Git-TortoiseGit完整配置流程>的拓展,所以需要对上一篇文章有所了解,当然直接往下 ...

  7. Windows下配置Git多账号github码云

    Windows下配置Git多账号github码云 1.配置了全局用户名和邮箱 $ git config --global user.email "你的邮箱" $ git confi ...

  8. git多账号登录问题

    作者:白狼 出处:http://www.manks.top/git-multiply-accounts.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文 ...

  9. Git安装与配置

    一.简介 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

随机推荐

  1. 异常处理类-Throwable源码详解

    package java.lang; import java.io.*; /** * * Throwable是所有Error和Exceptiong的父类 * 注意它有四个构造函数: * Throwab ...

  2. Excel 扩展编程相关

    ============================产品分析============================Excel Automation Tools (Best of List)htt ...

  3. linux查询及添加用户

    1.查询用户. 存储帐号的文件:/etc/passwd 存储密码的文件:/etc/shadow Cat  /etc/passwd Cat  /etc/shadow 2.添加用户 输入命令: usera ...

  4. express 将 Router 实例模块化

    为了更好的组织代码,将 Router 实例进行模块化,将 get / post 等快捷方式放在Router上,而不是 App 上,然后将该 Router 作为中间件,use 到 server.js 上 ...

  5. Linux PXE + Kickstart 自动装机

    大规模装机时,使用无人值守装机便可大大简便人工操作,提高效率. PXE 网络安装 配置双网卡 这里ens33为nat网络,ens37为仅主机网络,配置ens37 [root@localhost ~]# ...

  6. Shell命令-用户用户组管理之id、su

    文件及内容处理 - id.su 1. id:查看用户的uid,gid及归属的用户组 id命令的功能说明 id 命令用于显示用户的 ID,以及所属群组的 ID.id 会显示用户以及所属群组的实际与有效I ...

  7. drf扩展知识点总结视图

  8. 用背包问题思路解决 322. Coin Change(完全背包)

    首先需要明白 0-1 背包问题中的放置表格,见 “玩转算法面试 从真题到思维全面提升算法思维” 9-5 节,本题思路类似表格纵向为:只考虑第 [0 …,… index] 种硬币(物品)表格横向为:需要 ...

  9. 深度工作(Charlotte)

    作者:Charlotte文章转自:https://zhuanlan.zhihu.com/p/56719363 为什么要深度工作? 作为一名程序员/媛,工作时长动则十几小时,然而有的人效率奇高,有的人上 ...

  10. luoguP4094 [HEOI2016/TJOI2016]字符串

    题意 考虑二分答案\(mid\),现在我们要判断\(s[c...c+mid-1]\)是否在\(s[a...b]\)出现过. 首先找到\(s[c...c+mid-1]\)所在的状态: 建出\(paren ...