用Git把一个项目同时push到两个远程仓库

在写项目的过程中,可能会需要把项目push到两个远程仓库中去,但如果你使用idea的话,可能不好直接找到能够实现这种需求的设置。下面就结合我的实际经验来谈谈我是怎么实现的。

前提条件:

1、在idea中已经创建好任意一个项目;

2、电脑中已经安装好git客户端;

3、已经创建好两个远程仓库,并获取到仓库地址。

其实这是一个认知的问题,只要你知道其实git是支持push到两个远程仓库的这个问题就好办了。

假设我们有两个仓库,一个是GitHub(外网),一个是GitLab(内网)。把代码push到GitHub应该非常简单,在idea中鼠标点击VCS -> 选择Import into Version Control -> 再选择Share Project on GitHub,没错,就是那个望向月球的猫。到这步你已经可以push到GitHub了。

那么我们怎么才能把相同的代码也push到GitLab上呢?

方法一:

在工具栏点击VCS -> Git -> Remotes 。

方法一

再点击+号键就可以添加远程仓库地址了。

Git Remotes

远程仓库的名字改成一个你能识别的名字,然后在url里填写你已经创建好的远程仓库地址。

Define Remote

OK!大功告成,这样你在push的时候就可以选择push到哪一个远程仓库,push完第一个再push完第二个,虽然不能同时push到两个远程仓库,但在你的远程仓库数比较少的时候也还是比较好用的。

方法二:

在idea中按住快捷键CRTL+SHIFT+K,就可以弹出push的窗口,此时你可以点击那个带下划线的远程仓库名,然后选择Define Remote添加另一个远程仓库。

Push Commits

然后后面的步骤就和第一种方法类似了,不再赘述。

方法三:

方法三就厉害了,我将为您介绍一种真同时的方法。

首先在文件夹中打开项目的根目录,然后右击鼠标打开Git Bash;

使用git remote -v 查看远程仓库的名字和地址;

1
2
3
$ git remote -v
origin git@192.100.1.53:kd_fangcheng/FastDFS_webClient.git (fetch)
origin git@192.100.1.53:kd_fangcheng/FastDFS_webClient.git (push)

我们可以看到在我的本地git中已经维护着一个远程仓库的地址,那么怎么使得在我们使用git push origin master这个命令的时候同时上传到两个不同的远程仓库中去呢?

其实一条命令就可以解决问题,但是如果我现在就告诉你这条命令,你也只是学会了这样一条命令,等你下次再碰到git相关的问题是不是又要谷歌呢。授人以鱼不如授人以渔,我会告诉你我是怎样学习这条命令的。

所以我们需要学会自己去解决问题,还是在Git Bash中,敲入git remote --help,就会在浏览器中自动打开一个帮助页面(一般在git的一类命令末尾加上空格和–help就会在浏览器弹出帮助页面)。

git-remote(1)Manual Page

我们注意到红框中的这条命令,这条命令就是我们需要找的命令。

我们再往下看这条命令的解释:

set-url

也就是说这条命令可以添加一个远程仓库的URL,只要我们把这条URL的别名设置为origin,这样不就可以在使用git push origin master的时候把代码同时上传到两个或者多个远程仓库中去,只要它们在本地git中设置的别名一样。

具体可以这样使用git remote set-url --add origin https://github.com/fkccoding/fastdfs-client.git

1
2
3
4
$ git remote -v
origin git@192.100.1.53:kd_fangcheng/FastDFS_webClient.git (fetch)
origin git@192.100.1.53:kd_fangcheng/FastDFS_webClient.git (push)
origin https://github.com/fkccoding/fastdfs-client.git (push)

我们可以看到origin多了一个远程仓库的URL。

OK,这就是在git上设置同时上传代码到多个远程仓库的方法,如果有问题,欢迎在下方留言,记得留邮箱以便我回复你时可以收到提醒哦~


用Git把一个项目同时push到两个远程仓库
https://www.chuckfang.com/2019/04/10/Upload-git-to-both-remote-repositories-at-the-same-time/
作者
方程
发布于
2019年4月10日
许可协议