美文网首页
多个Github账号的仓库共存的配置

多个Github账号的仓库共存的配置

作者: m2fox | 来源:发表于2020-04-14 00:03 被阅读0次

    假设你有2个github账号: mygit1@gmail.commygit2@gmail.com ,想要在同一个电脑上同时管理这两个账号下的仓库。方法如下:

    • 打开git bash命令行,cd到~/.ssh目录下,分别执行如下命令生成两个账号的秘钥:
      ssh-keygen -t rsa -C "mygit1@gmail.com"
      ssh-keygen -t rsa -C "mygit2@gmail.com"
    

    注:在生成mygit1和mygit2的秘钥时,第一步输入文件名分别为: id_rsa_mygit1id_rsa_mygit2,并且后面两步不要输入密码(保持为空)。

    • 把生成的两个账号的公钥内容(.pub后缀的文件内容)分别添加到两个账号的github配置信息里(Settings -> SSH and GPG keys

    • ~/.ssh目录下执行下面的命令添加账号:

      ssh-add -D
      ssh-add ~/.ssh/id_rsa_mygit1
      ssh-add ~/.ssh/id_rsa_mygit2
      ssh-add -l
    

    注:如果执行ssh-add命令报错:Could not open a connection to your authentication agent.,则可以通过执行命令:ssh-agent bash来解决。

    • 创建一个文件:~/.ssh/config,其内容如下:
        # mygit1
        Host mygit1.github.com # 注:这里的域名可以随意写,它只是起一个标识的作用,只要保证不同账户的域名不同即可
        HostName github.com # 这里的域名要保持为github.com
        User mygit1
        IdentityFile ~/.ssh/id_rsa_mygit1
        
        # mygit2
        Host mygit2.github.com  
        HostName github.com
        User mygit2
        IdentityFile ~/.ssh/id_rsa_mygit2
    
    • 测试连接性(以mygit1账户为例,mygit2同理):ssh -T git@mygit1.github.com,如果输出如下内容则表明连接性OK:Hi mygit1! You've successfully authenticated, but GitHub does not provide shellaccess.

    • git init命令创建本地仓库,然后设置局部git配置(以mygit1账户为例,mygit2同理):

        git config user.name  "mygit1"
        git config user.email  "mygit1@gmail.com"
    
    • 可以在本地的一个已有的仓库上修改关联的远程仓库信息(以mygit1账户为例,mygit2同理):
      git remote rm origin
      git remote add origin git@mygit1.github.com:mygit1/mygit1.github.io.git
    
    • 也可以在clone远程仓库时直接指定远程的仓库和github账户信息(以mygit1账户为例,mygit2同理):
      git clone git@mygit1.github.com:mygit1/mygit1.github.io.git
    
    • 拉取远程仓库代码、更新代码:
      git pull origin master --allow-unrelated-histories
      touch test.txt
      git add -A
      git commit -m "test push"
      git push origin master
    
    • That's all, enjoy it.

    相关文章

      网友评论

          本文标题:多个Github账号的仓库共存的配置

          本文链接:https://www.haomeiwen.com/subject/eframhtx.html