如何在同一台电脑上同时使用多个Git账号?

    科技2022-07-29  106

    程序员的成长之路

    互联网/程序员/技术/资料共享 

    关注

    阅读本文大概需要 2 分钟。

    来自: juejin.im/post/6844904066900819982

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

    思 路

    同时管理多个SSH key。

    解决方案

    生成多个SSH key

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

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

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

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

    即两份包含私钥和公钥的4个文件。


    获取密钥

    cat ~/.ssh/id_rsa_one.pub cat ~/.ssh/id_rsa_two.pub

    其中idrsaone.pub和idrsatwo.pub就是上面对ssh文件重命名的文件名。

    有了这个密钥,你就可以将其添加到你所需要用的平台上去。

    创建config文件

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

    touch config

    这样就会在~/.ssh目录下生成一个空的config文件,然后我们在文件中添加以下内容:

    # git server one Host one.aliyun.com #别名 Hostname code.aliyun.com #真实域名 PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_one #ssh 文件路径 User one #git server two Host two.aliyun.com Hostname code.aliyun.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_two User two

    远程测试

    ssh –T one.aliyun.com ssh –T two.aliyun.com

    使 用

    比如clone到本地

    原来的写法:

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

    现在的写法:

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

    给仓库设置局部用户名和邮箱

    git config user.name "one_name"; git config user.email "one_email" git config user.name "two_name"; git config user.email "two_email"

    <END>

    公众号最新导航栏

    推荐阅读:

    厉害了!华为将发布国产编程语言,打破国外垄断!

    中国顶级黑客Top10,最后一位你猜是谁

    5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「2048」,即可免费获取!!

    微信扫描二维码,关注我的公众号

    朕已阅 

    Processed: 0.013, SQL: 8