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)