Git多平台/多账号配置
有时候需要在一台电脑使用多个git平台(Gitee、GitHub、Gitlab...)或者一个平台多个不同账号,比如想同时配置公司git和个人的git,提交代码时提交到对应的平台/账号的代码仓库且互不影响。这时候需要配置不同的SSH key。
1. 生成SSH key
- 默认情况下,用户的 SSH 密钥存储在其
~/.ssh目录下。 进入该目录并列出其中内容,你便可以快速确认自己是否已拥有密钥:
$ cd ~/.ssh
$ ls
authorized_keys2 id_dsa known_hosts
config id_dsa.pub
- 该目录中一般有一对以
id_dsa或id_rsa命名的文件,其中一个带有.pub扩展名。.pub文件是你的公钥,另一个则是与之对应的私钥。 如果找不到这样的文件(或者根本没有.ssh目录),你可以通过运行ssh-keygen程序来创建它们。
$ ssh-keygen -t rsa -C "xxx@xxx.com" -f ~/.ssh/id_rsa_github
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置密钥注释,如邮箱。
-f 设置密钥文件的文件名。
注意:如果多次生成私钥公钥则需要重新命名,否则会覆盖之前的同名密钥文件。

2. 配置公钥到远端git
以GitHub为例:
- 点击右上角头像,选择下拉菜单中的Settings
- 找到SSH and GPG keys
- New SSH key,输入一个标题,把本地的公钥
.pub文件内容全选复制粘贴到文本框里

3. 配置config文件
- 在
~/.ssh目录下,如果没有config文件可以通过touch ~/.ssh/config指令创建config文件,如果有则直接编辑这个文件:
$ touch ~/.ssh/config
- 修改config文件的内容,配置完以后,github的仓库会使用
~/.ssh/id_rsa_lpk_github密钥进行验证,gitee会使用~/.ssh/id_rsa_lpk_gitee密钥进行验证。
# github
Host github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_lpk_github
User lpk
# gitee
Host gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_lpk_gitee
User lpk
文件参数:
Host:主机名
User:指定登录的用户名,默认为git
HostName:指定要登录的真实主机名
PreferredAuthentications:指定客户端尝试身份验证方法的顺序
IdentityFile:指定使用的密钥文件
其他参数配置详见 点击这里
4. 测试连接
- 执行以下指令测试能否成功连接
$ ssh -T git@github.com
- 出现以下结果表示连接成功

至此,配置完毕,可以提交代码到不同平台了
Git多平台/多账号配置的更多相关文章
- 【亲测可用,亦可配置同一平台的不同账号,例如阿里云的两个不同账号】Windows下Git多账号配置,同一电脑多个ssh-key的管理
Windows下Git多账号配置,同一电脑多个ssh-key的管理 这一篇文章是对上一篇文章<Git-TortoiseGit完整配置流程>的拓展,所以需要对上一篇文章有所了解,当然直接 ...
- git多账号配置,同时使用多个代码托管平台
git多账号配置,同时使用多个代码托管平台:https://blog.csdn.net/pinnuli/article/details/81293071
- 一台电脑,两个及多个git账号配置
1. 生成两[三]个ssh公钥私钥 方法参照:http://www.cnblogs.com/fanbi/p/7772812.html第三步骤 假定其中一个是id_rsa, 另一个时id_rsa_two ...
- Git多账号配置
在一台电脑上配置多个不同的 ssh key 前言 如果拥有多个Git远程仓库,尤其是其中一个是工作中使用的仓库,只使用一个ssh key安全性很低,建议为不同Git远程仓库配置不同的ssh key. ...
- [转]git在eclipse中的配置
一_安装EGIT插件 http://download.eclipse.org/egit/updates/ 或者使用Eclipse Marketplace,搜索EGit 二_使用EGIT前的配置 配置个 ...
- git的安装和环境配置过程(学习笔记)
1.安装git 官网下载:https://github.com(目前官网好像找不到了,但是妙味的视频里面是在官网下载的)https://git-for-windows.github.io/ (廖雪峰老 ...
- Disconf 分布式配置管理平台(安装配置)
Disconf 分布式配置管理平台(安装配置) 依赖环境 Nginx:处理静态资源请求.动态请求转发到Tomcat Tomcat:处理Nginx的请求 Redis:用户session管理 MySQL: ...
- caffe学习(1):多平台下安装配置caffe
如何在 centos 7.3 上安装 caffe 深度学习工具 有好多朋友在安装 caffe 时遇到不少问题.(看文章的朋友希望关心一下我的创业项目趣智思成) 今天测试并整理一下安装过程.我是在阿 ...
- Git详解之特殊配置与钩子应用
前言 到目前为止,我阐述了 Git 基本的运作机制和使用方式,介绍了 Git 提供的许多工具来帮助你简单且有效地使用它. 在本章,我将会介绍 Git 的一些重要的配置方法和钩子机制以满足自定义的要求. ...
- 【转】git在eclipse中的配置
原文网址:http://www.cnblogs.com/zhxiaomiao/archive/2013/05/16/3081148.html 一_安装EGIT插件 http://download.ec ...
随机推荐
- pintia 3-7-5 逆波兰表达式求值 (20 分)
3-7-5 逆波兰表达式求值 (20 分) 逆波兰表示法是一种将运算符(operator)写在操作数(operand)后面 的描述程序(算式)的方法.举个例子,我们平常用中缀表示法描述的算式(1 + ...
- drf(3)
1 不使用drf编写5个接口 1.1 路由 urlpatterns = [ path('books/', views.BookView.as_view()), path('books/&l ...
- C++ 全面总结
1. 基本数据类型:没什么好说的.知道浮点数存储起来不精确.各种类型占的大小在不同平台可能不一样就行了 2. 初始化列表:能用就用.能防止潜在的类型收窄, 3. static_cast 和 dynam ...
- Integer类自动拆箱,装箱解析
1.自动拆箱 例1: int i1 = 10; Integer i2 = new Integer(10); System.out.println(i1 == i2); 这个结果是true i1为基本数 ...
- MYSQL 变更账号密码
#1 首先找到Mysql[安装的路径],切换到对应的bin目录,例如安装在D盘 C:User\Administrator> d:(输入盘符回车) D:\> cd D:\MySQL\MySQ ...
- jacoco插件添加
1.添加依赖 <dependency> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-p ...
- pragma pack(字节对齐用法)---C语言
#pragma pack(4) typedef struct { char buf[3]; word a; }kk; #pragma pack() 对齐的原则是min(sizeof(word ),4) ...
- AttributeError: module 'torchvision' has no attribute 'transforms'
代码:maskrcnn-benchmark Python 3.6.13 |Anaconda, Inc Traceback (most recent call last): File "too ...
- odoo 权限管理学习总结
环境 odoo-14.0.post20221212.tar base_user_role-12.0.2.1.2.zip 下载地址: https://apps.odoo.com/apps/modules ...
- 基于Kubernetes(k8s)部署Dubbo+Nacos服务
一.说明 本文介绍基于 Kubernetes(k8s) 环境集成阿里云 私有镜像仓库 来部署一套 Dubbo + Nacos 的微服务系统,并使用 Kubernetes DNS 以及 port-for ...


