git ssh 配置多个账户
2016-12-11 15:44
435 查看
前言:前几天在写博客 手把手教你用Hexo + github 搭建自己博客的时候,经常需要用到一些git操作,截了好多图,于是就想干脆整理成一系列的git 教程,总结如下
Git下载及配置环境变量
Git 命令行教程及实例教程
Git ssh 配置及使用
git ssh 配置多个账户
Git config 使用说明
Git 配置别名 —— 让命令变得更简单
你可能会在一台电脑上提交到不同的github上,怎么办呢…
所以查了一下关于同机器多账号的ssh-key配置,在此记录一下。
操作步骤
如果我们Windows 系统上面已经有了ssh-key再创建ssh-key的话,需要给我们的ssh-key文件取不同的名字,默认是id_rsa,如果不重新起名的话,会把原有的给覆盖掉。
首先打开git bash ,可以通过在桌面上右键打开 (右键 》 git bash here),切换到ssh目录,输入一下命令
输入文件名及路径
这样的话会在 目录下生成两个文件
首先打开git Bash
然后修改如下: 我的config配置如下:
其规则就是:从上至下读取config的内容,在每个Host下寻找对应的私钥。这里将GitHub SSH仓库地址中的git@github.com替换成新建的Host别名如:github2,那么原地址是:git@github.com:funpeng/Mywork.git,替换后应该是:github2:funpeng/Mywork.git.
Hi gdutxiaoxu! You’ve successfully authenticated, but GitHub does not provide shell access..
$ ssh -T github2
Hi xujun94! You’ve successfully authenticated, but GitHub does not provide shell access.
进入我们的仓库 ,添加xujun.txt 文件,add > commit > push ,将可以看到如下的效果
如果你只是通过这篇文章中所述配置了Host,那么你多个账号下面的提交用户会是一个人,所以需要通过命令git config –global –unset user.email删除用户账户设置,在每一个repo下面使用git config –local user.email ‘你的github邮箱@mail.com’ 命令单独设置用户账户信息
Git下载及配置环境变量
Git 命令行教程及实例教程
Git ssh 配置及使用
git ssh 配置多个账户
Git config 使用说明
Git 配置别名 —— 让命令变得更简单
闲聊
一台电脑上有一个ssh key,在github上提交代码,由于其他原因你可能会在一台电脑上提交到不同的github上,怎么办呢…
所以查了一下关于同机器多账号的ssh-key配置,在此记录一下。
操作步骤
如果我们Windows 系统上面已经有了ssh-key再创建ssh-key的话,需要给我们的ssh-key文件取不同的名字,默认是id_rsa,如果不重新起名的话,会把原有的给覆盖掉。
1.新建ssh-key&重新命名
这里我们新建的key名为 id_rsa2,路径为:C:\Users\Administrator.ssh首先打开git bash ,可以通过在桌面上右键打开 (右键 》 git bash here),切换到ssh目录,输入一下命令
//切换到ssh目录 cd ~/.ssh
//新建ssh-key ssh-keygen -t rsa -C "mywork@email.com" //为新建的ssh-key重新命名 Enter file in which to save the key
输入文件名及路径
C:\Users\Administrator\.ssh\id_rsa2
这样的话会在 目录下生成两个文件
C:\Users\Administrator\.ssh\id_rsa2 C:\Users\Administrator\.ssh\id_rsa2.pub
2.新ssh-key添加到ssh agent中
因为默认只读取id_rsa,为了让SSH识别新的私钥,需将其添加到SSH agent中:首先打开git Bash
//打开ssh-agent 客户端,否则会报错 eval `ssh-agent -s` ssh-add ~/.ssh/id_rsa2
3.配置 将不同账号的工程图服务器与ssh-key关联
账户以及git服务器与对应的密钥关联。在~/.ssh目录下找到config文件,如果没有就创建:touch config
然后修改如下: 我的config配置如下:
# 该文件用于配置私钥对应的服务器 # Default github user(first@mail.com) Host github.com HostName github.com User git IdentityFile C:/Users/Administrator/.ssh/id_rsa # second user(second@mail.com) # 建一个github别名,新建的帐号使用这个别名做克隆和更新 Host github2 HostName github.com User git IdentityFile C:\Users\Administrator\.ssh\id_rsa2
其规则就是:从上至下读取config的内容,在每个Host下寻找对应的私钥。这里将GitHub SSH仓库地址中的git@github.com替换成新建的Host别名如:github2,那么原地址是:git@github.com:funpeng/Mywork.git,替换后应该是:github2:funpeng/Mywork.git.
4、用记事本打开新生成的~/.ssh/id_rsa2.pub文件,将里面的内容添加到GitHub后台。
可不要忘了添加到你的另一个github帐号下的SSH Key中。5、测试:
$ ssh -T git@github.comHi gdutxiaoxu! You’ve successfully authenticated, but GitHub does not provide shell access..
$ ssh -T github2
Hi xujun94! You’ve successfully authenticated, but GitHub does not provide shell access.
6、应用
假如我们要克隆我们的远程仓库:https://github.com/xujun94/xujun.git ,在我的github 账户上配置 的为 ssh 可以为 id_isa2,正常情况下我们是需要输入命令git clone git@github.com:xujun94/xujun.git
git clone github2:xujun94/xujun.git
进入我们的仓库 ,添加xujun.txt 文件,add > commit > push ,将可以看到如下的效果
如果你只是通过这篇文章中所述配置了Host,那么你多个账号下面的提交用户会是一个人,所以需要通过命令git config –global –unset user.email删除用户账户设置,在每一个repo下面使用git config –local user.email ‘你的github邮箱@mail.com’ 命令单独设置用户账户信息
相关文章推荐
- GIT SSH多账户配置
- git ssh配置多个账户 | 指定私钥登入
- ssh-key 与 git账户配置以及多账户配置
- ssh-key 与 git账户配置以及多账户配置
- ssh-key 与 git账户配置以及多账户配置
- Pycharm配置git提交的账户以及SSH密钥
- 如果不配置SSH公钥使用git远程仓库会怎么样?
- ssh的多账户功能 for 多个git远程服务器
- git配置ssh非默认端口
- 配置 Git 和 SSH 密钥连接 Github
- 配置多个git远程仓库的ssh-Key切换
- 最简单git服务器配置-SSH连接方式
- git的ssh配置,包括多个git server配置ssh config,使用多个ssh identify
- Fedora下配置git+SSH
- git配置ssh非默认端口
- 一个客户端配置多个Git账户
- git 在一台机器上配置多个账户
- eclipse 配置git ssh登录
- 替代svn,使用git做版本控制 TORTOISEGIT的SSH配置
- 配置多个git远程仓库的ssh-Key切换