[Git]单机多点远程Git仓库

我们经常会去GitHub上看一些资料,开源项目之类的,但是毕竟是国外的,我的代码都是放在国内的,如gitee.com,coding.net。这样就有一个问题,如何在一个系统中同时配置多个远程Git仓库呢?我们今天就来说说这个问题,当然网上资料一大片,我是针对这个问题的重点和问题来写的,希望对你有所帮助,欢迎喷涂。。。

[Git]远程Git ~ SSH
[Git]一个本地Git仓库push多个远程仓库

比如我们生成两个远程Git仓库,一个连接远程的GitEE,一个连接远程的GitHub

一、配置远程GitEE的仓库

  1. 使用命令生成关联码云的公钥私钥对
    ssh-keygen -t rsa -C "ThinkPad~GitEE"
    
  2. 输入私钥的名称的时候,即屏幕上出现Enter file in which to save the key (/home/ShrekerNil/.ssh/id_rsa):的时候,输入私钥的名称,这里我的输入是:id_rsa_gitee
    然后后面的相位就不用管了,一路回车,就生成完成了
  3. 打开.ssh文件夹,打开生成的pub文件,复制其中的所有内容,打开GitEE官网,在右上角图标的下拉框中选择设置(seting),打开的界面中的左侧导航栏中选择SSH公钥,把刚才复制的公钥信息粘贴到下面的大框中,然后填写一个你认识的标题,就可以保存了;
  4. .ssh文件夹中,生成一个名为config的文件,其中配置如下的信息
    # Config GitEE
    Host gitee.com
    HostName gitee.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_gitee
    
  5. 利用命令把这个信息添加到
    ssh-add ~/.ssh/id_rsa_gitee 
    
    • 如果报错:Could not open a connection to your authentication agent.,那么执行如下命令后再次执行上面的添加操作,即可成功
      ssh-agent bash 
      
    • 如果报警告:WARNING: UNPROTECTED PRIVATE KEY FILE!,是因为你没有这个权限,我这里命令行用的是babun,所以可以在windows上按照Linux的格式修改权限:
      chmod 700 ~/.ssh/id_rsa_gitee
      
  6. 然后就可以测试码云的连接了:
    ssh -T [email protected] 
    
    • 如果报错:Bad owner or permissions on /home/ShrekerNil/.ssh/config,说明还是权限的问题,执行下列命令后再执行上面的测试指令即可:
      chmod 600 ~/.ssh/config
      

二、配置远程GitHub的仓库

  1. 主要的步骤和上面的一模一样,还是首先创建本地的公私钥对,把公钥配置到GitHub上,在config文件中配置相关的信息,把密钥添加到ssh中,测试连接等

三、其他说明

  1. ssh-keygen指令可以添加上要生成的私钥的文件名,如果添加文件名参数,那么后面就不会再提示填写, 即非交互式生成密钥对,如下:
    ssh-keygen -t rsa -C "ThinkPad~GitEE" -f "id_rsa_test"
    
  2. 查看本地ssh添加了哪些连接
    ssh-add -l
    

你可能感兴趣的:([Git]单机多点远程Git仓库)