git 给远程库 添加多个url地址

一般来说,我们为git增加远程库,一般都是
git remote add origin <url> ( 你可以使用真实的地址来代替 \<url\> )

但是你可能想要把你的本地的git库,既push到github上,又push到开源中国的Git@OSC上,怎么解决呢。
有人可能会用两个甚至多个远程库,即再添加一个远程库git remote add origin2;
这个方法很低效,因为你要git push 两次才能完成push到两个库。

其实还有一个方法,git的一个远程库 可以对应多个地址,即我能让 远程库origin拥有多个url地址。 方法如下:

使用流程

首先,我们从零开始, 假设你现在想要增加3个远程库地址,分别为 :

\<url1\> https://git.oschina.net/sqeven/sqeven.git
\<url2\> https://git.oschina.net/sqeven/seven.git
\<url3\> https://github.com/sqeven/seven.git

首先,先增加第一个地址 git remote add origin <url1>
然后增加第二个地址 git remote set-url --add origin <url2>
增加第三个地址 git remote set-url --add origin <url3>
....依次类推

这样就完成了添加多个地址到origin库中了, 以后只要使用git push origin master 就可以一次性push到3各库里面了(使用git push也可)

原理解析

git remote set-url --add origin

就是往当前git项目的config文件里增加一行记录
config文件打开方式有两种:

使用命令git config -e
在当前git项目的根目录下,文件位于 .git/config (.git目录为隐藏文件)
你每执行一次git remote set-url --add origin 就会增加一行,如下图:

git remote -v:显示当前所有远程库的详细信息,显示格式为 远程库名字 url连接(类型)

git-remote

所以说,你直接在config里面直接添加url来修改也是可以的,不必去执行git命令。

注意

使用git push origin master时,你可以push到origin的多个url地址,
但是使用 git pull时,只能拉取origin里的一个url地址(即fetch-url,如上图),这个fetch-url默认为 你添加的到origin的第一个地址,
如果你想更改,只需要更改config文件里,那三个url的顺序即可,fetch-url会直接对应排行第一的那个utl连接。
#git# #github#

评论2

评论请先登录

最近热帖

  1. 基于 Harbor 搭建 Docker 私有镜像仓库 789042
  2. PPS代理节点池 287294
  3. PPS代理节点池② 196625
  4. PPS代理节点池③ 166469
  5. 订阅池记录 143457
  6. V2ray免费账号 12602
  7. WEB代理地址 4009
  8. 全栈开发笔记 3573
  9. GITHUB项目 2835
  10. 百度的无刷新搜索之PJAX 2535

近期热议

  1. GITHUB项目 55
  2. PPS代理节点池 50
  3. WEB代理地址 43
  4. 全栈开发笔记 42
  5. ROBOT机器人之路 31
  6. PPS代理节点池③ 26
  7. PPS代理节点池② 20
  8. C++回归之路 19
  9. OCR识别探索 16
  10. 错误笔记本 14