git同时push代码到github、码云等多个平台

工具 刘宇帅 6年前 阅读量: 1626

前提

我们一般为代码添加远程仓库一般是:

git remote add <name> <url>

比如以我的一个代码库为例:

git remote add origin git@github.com:yushuailiu/go-algorithm.git

这样我们就可以向github提交代码了。但是有时候我们可能想要把代码同时提交到gitee上,那么我们可以像上面一样添加一个新的仓库

git remote add gitee git@gitee.com:liuyushuai/go-algorithm.git

然后如果我们有代码更新我们需要同时更新origin和gitee

git push origin master
git push gitee master

但是这样就变得比较麻烦,有个简单的方法可以实现。

实现

git一个远程库是支持配置多个url的,也就是说一个origin远程库可以同时配置github、gitee等多个url,这样我们更新origin远程库就相当于更新了多个库。具体操作如下:

git remote add origin git@github.com:yushuailiu/go-algorithm.git
git remote set-url --add origin git@gitee.com:liuyushuai/go-algorithm.git

我们再执行git push更新则会同时更新两个远程库。其实对应的配置文件是.git/config,感兴趣的可以去了解下。
虽然我们为origin添加了多个url,但是当我们pull的时候,只会从一个库里拉取,默认就是我们第一个添加的url地址。具体可以通过git remote show origin查看。

$ git remote show origin
* remote origin
  Fetch URL: git@github.com:yushuailiu/go-algorithm.git
  Push  URL: git@github.com:yushuailiu/go-algorithm.git
  Push  URL: git@gitee.com:liuyushuai/go-algorithm.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (up to date)

提示

功能待开通!


暂无评论~