查看原文
其他

在一台Mac上不同平台同时使用多个Git账号

joker_king 程序猿DD 2019-07-13

来源:http://gk.link/a/101Na

有时候我们可能需要在一太电脑上使用多个Git账户的情况,这时候我们就需要针对多个平台和账户进行不同的设置。 

思路 

同时管理多个SSH key。 

解决方案 

  • 生成多个SSH key 

这里使用one two两个账户进行举例

注意在生成多个SSH key的时候一定要在~/.ssh目录下进行,否则生成的SSHkey不会再~/.ssh目录下。 以下有操作都是在~/.ssh目录下进行的。 在生成之前尽量删除此目录下的所有文件再进行,以免出现不必要的问题。

  1. ssh-keygen -t rsa -C "one@email.com"

  1. ssh-keygen -t rsa -C "two@email.com"

复制代码再输入命令行的时候在第一次提示Enter file in which to save the key的时候对ssh文件进行重命名(idrsaone和idrsatwo),这是就会生成一下目录中的四个文件。

两份包含私钥和公钥的4个文件。 添加私钥 在对应平台添加私钥的地方,把两个账号生成的私钥添加进去。 

  • 获取私钥

  1. cat ~/.ssh/id_rsa_one.pub

  1. cat ~/.ssh/id_rsa_two.pub

其中(idrsaone.pub和idrsatwo.pub)是之前对的ssh文件重命名的文件名 

  • 创建config文件 

在~/.ssh目录下创建一个config文件

  1. touch config

会在~/.ssh目录下生成一个空的config文件,我们在文件中添加以下内容。

  1. #git server one

  2. Host one.aliyun.com #别名

  3. Hostname code.aliyun.com #真实域名

  4. PreferredAuthentications publickey

  5. IdentityFile ~/.ssh/id_rsa_one #ssh 文件路径

  6. User one

  7. #git server two

  8. Host two.aliyun.com

  9. Hostname code.aliyun.com

  10. PreferredAuthentications publickey

  11. IdentityFile ~/.ssh/id_rsa_two

  12. User two

  • 远程测试【可跳过】

  1. ssh –T one.aliyun.com

  1. ssh –T two.aliyun.com

  • 使用

clone到本地 

原来的写法

  1.  git@code.aliyun.com:项目路径.git

现在的写法

  1.  git clone git@one.github.com:项目路径.git

  1. git clone git@two.github.com:项目路径.git

给仓库设置局部用户名和邮箱【可不设置】

  1.  git config user.name "one_name" ; git config user.email "one_email"

  2.  git config user.name "two_name" ; git config user.email "two_email"

小结 

此篇文章是自己通过网上查询然后自己实践总结而得。由于本人知识有限,难免总结得很完整,如果读者遇到什么问题,欢迎留言讨论,共同学习。

·END·

 近期热文:


看完,赶紧点个“好看”鸭

点鸭点鸭

↓↓↓↓

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存