页面“C 语言教程”与“多个git账号之间的切换 多个git账号指定不同的key”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
(导入1个版本)
 
docker>Evan
(导入1个版本)
 
第1行: 第1行:
  
C 语言教程
+
多个git账号之间的切换 多个git账号指定不同的key
  
Linux C一站式编程习题答案
+
ssh可以通过-i使用指定的私钥文件,如:
  
http://www.cnblogs.com/litifeng/articles/5638574.html
+
ssh -i ~/mykey_rsa username@host
  
http://yonghaowu.github.io/2016/06/21/LinuxC/
+
但是走ssh协议的git却没有类似的参数可以指定,只能是使用用户默认的ssh私钥。
  
http://blog.csdn.net/jnu_simba/article/details/8809032
+
而git 一般也是用key认证的,如果你来我一样的情形 ,怎么办 ? 先假设我有两个账号,一个是github上的,一个是公司gitlab上面的。先为不同的账号生成不同的ssh-key
  
[http://c.biancheng.net/cpp/u/jiaocheng/ C语言入门教程,C语言入门书籍《C语言小白变怪兽》]
+
ssh-keygen  -t rsa -f ~/.ssh/id_rsa_work -C evan886@gmail.com
  
[http://code.ziqiangxuetang.com/cprogramming/c-tutorial.html  C 语言教程(自强学堂)]
+
然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_work和id_rsa_work.pub两个文件,id_rsa_work.pub文件里存放的就是我们要使用的key
  
[http://study.163.com/course/introduction/1336003.htm 艾叔:零基础一站式C语言|C程序设计精讲]
+
ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C evan886@gmail.com
  
[http://c.biancheng.net/cpp/u/yuanma/ 100个C语言经典小程序和C语言编写的小游戏,带注释和解析]
+
然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_github和id_rsa_github.pub两个文件,id_rsa_gthub.pub文件里存放的就是我们要使用的key
 
  
 +
编辑 ~/.ssh/config,设定不同的git 服务器对应不同的key
  
 +
在本机添加
 +
<pre>cat ~/.ssh/config
  
 +
Host github.com
 +
  hostname github.com
 +
  User git
 +
  #port 22
 +
  IdentityFile /home/evan/.ssh/id_rsa_github
 +
  IdentitiesOnly yes
 +
 
 +
</pre>
  
 +
#建一个gitlab别名,新建的帐号使用这个别名做克隆和更新
 +
<pre>Host 192.168.11.11
 +
  HostName 192.168.11.11
 +
  User work
 +
  IdentityFile ~/.ssh/id_rsa_work
  
  [[category:c]]
+
</pre>
 +
 
 +
打开 [https://github.com/settings/ssh https://github.com/settings/ssh] 把pub key (id_rsa_github.pub) 添加一下
 +
 
 +
 +
 
 +
看到 You’ve successfully 就表示OK了
 +
 
 +
多个git账号之间的切换 也可以多个github 帐号 [http://memoryboxes.github.io/blog/2014/12/07/duo-ge-gitzhang-hao-zhi-jian-de-qie-huan/ http://memoryboxes.github.io/blog/2014/12/07/duo-ge-gitzhang-hao-zhi-jian-de-qie-huan/]
 +
 
 +
命令行下的git配置问题: 多个sshkey, 多个用户身份, git alias [http://www.liaohuqiu.net/cn/posts/git-setup-and-setting/ http://www.liaohuqiu.net/cn/posts/git-setup-and-setting/]
 +
 
 +
Git Config 命令查看配置文件 [https://cnbin.github.io/blog/2015/06/19/git-config-ming-ling-cha-kan-pei-zhi-wen-jian/ https://cnbin.github.io/blog/2015/06/19/git-config-ming-ling-cha-kan-pei-zhi-wen-jian/]
 +
 
 +
ssh-keygen -t rsa -f ~/.ssh/id_rsa_evan -C [email protected]
 +
 
 +
[https://www.linuxchina.net/?p=3393 https://www.linuxchina.net/?p=3393]
 +
 
 +
&nbsp;
 +
 
 +
&nbsp;
 +
 
 +
[[Category:git]]

2017年1月23日 (一) 09:56的版本

多个git账号之间的切换 多个git账号指定不同的key

ssh可以通过-i使用指定的私钥文件,如:

ssh -i ~/mykey_rsa username@host

但是走ssh协议的git却没有类似的参数可以指定,只能是使用用户默认的ssh私钥。

而git 一般也是用key认证的,如果你来我一样的情形 ,怎么办 ? 先假设我有两个账号,一个是github上的,一个是公司gitlab上面的。先为不同的账号生成不同的ssh-key

ssh-keygen  -t rsa -f ~/.ssh/id_rsa_work -C [email protected]

然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_work和id_rsa_work.pub两个文件,id_rsa_work.pub文件里存放的就是我们要使用的key

ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C [email protected]

然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_github和id_rsa_github.pub两个文件,id_rsa_gthub.pub文件里存放的就是我们要使用的key

编辑 ~/.ssh/config,设定不同的git 服务器对应不同的key

在本机添加

cat ~/.ssh/config

Host github.com
  hostname github.com
  User git
  #port 22
  IdentityFile /home/evan/.ssh/id_rsa_github
  IdentitiesOnly yes
  
  1. 建一个gitlab别名,新建的帐号使用这个别名做克隆和更新
Host 192.168.11.11
  HostName 192.168.11.11
  User work
  IdentityFile ~/.ssh/id_rsa_work

打开 https://github.com/settings/ssh 把pub key (id_rsa_github.pub) 添加一下

ssh -vT [email protected]

看到 You’ve successfully 就表示OK了

多个git账号之间的切换 也可以多个github 帐号 http://memoryboxes.github.io/blog/2014/12/07/duo-ge-gitzhang-hao-zhi-jian-de-qie-huan/

命令行下的git配置问题: 多个sshkey, 多个用户身份, git alias http://www.liaohuqiu.net/cn/posts/git-setup-and-setting/

Git Config 命令查看配置文件 https://cnbin.github.io/blog/2015/06/19/git-config-ming-ling-cha-kan-pei-zhi-wen-jian/

ssh-keygen -t rsa -f ~/.ssh/id_rsa_evan -C [email protected]

https://www.linuxchina.net/?p=3393