【干货】本地git对应多个远程仓库
当Githuber发现GitOSChina能发布项目演示,想把自己的项目也同步到OSChina上去时,同时维护两个本地仓库或者remote显得太过麻烦
提要
首先,为本地git仓库添加远程仓库,我们使用命令:git remote add origin [url],这样一来,本地仓库就对应有了一个远程仓库的地址,包括push和fetch源,如下图所示:

但是,我们如何才能做到既能将本地git仓库PUSH到Github,也能够PUSH到OSChina上呢?
可能有以下方式是你想到的:
- 本地创建两个仓库,一一对应(你不嫌麻烦的话的确可行)
- 添加多个远程库,即
git remote add [another-origin](那每次都要PUSH两次咯?)
其实,git的一个远程库本来就可以配置成多个地址,即一个origin拥有多个url。
敲黑板了(实现)
前提条件是,我们已经为本地仓库添加了一个origin远程库(没有添加的自行添加,方法前面说了)。我们现在为本地库继续添加url地址:https://git.oschina.net/anthony_box/hitools.git
这个命令是:git remote set-url --add origin [url](url替换成如上地址)

擦黑板了(原理)
其实该条命令执行就是在git项目的config文件里的[remote "origin"]配置新增一条记录,我们打开config文件看看,输入git config -e(文件路径:[repo]/.git/config):

所以说,执行git remote set-url -add origin和编辑config文件,一码子事。