歪麦博客

git增加多个push仓库: 一条push命令同时推送到gitee和github

最终效果是,执行如下一个命令,就能同时推送代码到 gitee 和 github。

git push origin master

实现步骤如下:

1、添加两个remote

命令如下。

git remote add origin git@gitee.com:yeszao/dnmp.git
git remote add github git@github.com:yeszao/dnmp.git

第一个为码云,仓库名为origin。默认情况下,git clone下来的代码默认远程仓库名就是origin,如果是这种情况,就不需要add origin了。

第二个为GitHub,仓库名为github

完成这一步之后,通过命令:git push origin master就可以推送代码到码云,git push github master就可以推送代码到GitHub。

2、为origin增加一个push地址**

git remote set-url --add origin git@github.com:yeszao/dnmp.git

这样就可以实现开头说的效果了。

3、验证

再次推送就像下面这样了,说明同时推到了 gitee 和 github。

$ git push origin master
 Enumerating objects: 10, done.
 Counting objects: 100% (10/10), done.
 Delta compression using up to 16 threads
 Compressing objects: 100% (6/6), done.
 Writing objects: 100% (6/6), 1.98 KiB | 253.00 KiB/s, done.
 Total 6 (delta 3), reused 0 (delta 0)
 remote: Powered by GITEE.COM [GNK-5.0]
 To gitee.com:yeszao/dnmp.git
    a033733..42e137d  master -> master

 Enumerating objects: 10, done.
 Counting objects: 100% (10/10), done.
 Delta compression using up to 16 threads
 Compressing objects: 100% (6/6), done.
 Writing objects: 100% (6/6), 1.98 KiB | 1.98 MiB/s, done.
 Total 6 (delta 3), reused 0 (delta 0)
 remote: Resolving deltas: 100% (3/3), completed with 3 local objects.
 To github.com:yeszao/dnpm.git
    a033733..42e137d  master -> master

也可以通过命令验证:

$ git remote -v
github    git@github.com:yeszao/dnmp.git (fetch)
github    git@github.com:yeszao/dnmp.git (push)
origin    git@gitee.com:yeszao/dnmp.git (fetch)
origin    git@gitee.com:yeszao/dnmp.git (push)
origin    git@github.com:yeszao/dnmp.git (push)

如上,origin多了一个push

退出移动版