当前位置: 首页 > news >正文

一个项目push到多个远程Git仓库

我创建了一个项目,然后通过下面的命令 push 到了 GitHub 上。如何再将这个项目 push 到其他远程仓库呢?

git remote add github https://github.com/zxbetter/test.git
git push -u github master

方法一: 使用 git remote add 命令

1.1# 如下命令查看远程仓库的情况,可以看到只有一个叫 github 的远程仓库。

git remote
github

git remote -v
github  https://github.com/zxbetter/test.git (fetch)
github  https://github.com/zxbetter/test.git (push)

1.2# 使用如下命令再添加一个远程仓库(这里以码云为例)

git remote add oschina https://git.oschina.net/zxbetter/test.git

1.3# 再次查看远程仓库的情况,可以看到已经有两个远程仓库了。然后再使用相应的命令 push 到对应的仓库就行了。这种方法的缺点是每次要 push 两次。

git remote
github
oschina

git remote -v
github  https://github.com/zxbetter/test.git (fetch)
github  https://github.com/zxbetter/test.git (push)
oschina https://git.oschina.net/zxbetter/test.git (fetch)
oschina https://git.oschina.net/zxbetter/test.git (push)

方法二: 使用 git remote set-url 命令

2.1# 删除方法一的 oschina 远程仓库。

git remote rm oschina

2.2# 使用如下命令添加远程仓库。

git remote set-url --add github https://git.oschina.net/zxbetter/test.git

2.3# 查看远程仓库情况。可以看到 github 远程仓库有两个 push 地址。这种方法的好处是每次只需要 push 一次就行了。

git remote -v
github  https://github.com/zxbetter/test.git (fetch)
github  https://github.com/zxbetter/test.git (push)
github  https://git.oschina.net/zxbetter/test.git (push)

方法三: 修改配置文件

打开 .git/config 找到 [remote "github"],添加对应的 url 即可,效果如下。这种方法其实和方法二是一样的。

[remote "github"]
    url = https://github.com/zxbetter/test.git
    fetch = +refs/heads/*:refs/remotes/github/*
    url = https://git.oschina.net/zxbetter/test.git

关于 git pull

方法二和三在 push 的时候比较方便。但是在 pull 的时候只能从方法三中的第一个 url 地址拉取代码。而方法一则不存在这种问题(可能要解决冲突)。
所以,如果只进行 push 操作,推荐方法二和三,如果也要进行 pull 操作,推荐方法一。

参考

将项目提交到两个git仓库(github和oschina)

Git提交到多个远程仓库

相关文章:

  • 每日一练No.5
  • linux shell通配符、元字符、转义符
  • 超实用的8个Linux命令行性能监测工具
  • P2667 超级素数
  • crunchbang10折腾过程
  • 半自动化安装dns
  • crontab 不能执行的原因
  • 在CentOS上安装Maven3
  • Django:(博客系统)添加文章(中文)出现UnicodeEncodeError乱码
  • iReport 编辑的报表,在jsp中导出到PDF的代码
  • js-scroll判断页面是向上滚动还是向下滚动
  • jQGrid API
  • 软件过程
  • Vmware vSphere(Esxi)常见问题汇总(转载)
  • Vue.js 2.0实战精华梳理
  • 【译】JS基础算法脚本:字符串结尾
  • [case10]使用RSQL实现端到端的动态查询
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • android图片蒙层
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • Go 语言编译器的 //go: 详解
  • Java 网络编程(2):UDP 的使用
  • linux学习笔记
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • SSH 免密登录
  • Theano - 导数
  • 工作手记之html2canvas使用概述
  • 基于遗传算法的优化问题求解
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 扑朔迷离的属性和特性【彻底弄清】
  • 前端工程化(Gulp、Webpack)-webpack
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 设计模式(12)迭代器模式(讲解+应用)
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 世界上最简单的无等待算法(getAndIncrement)
  • 思维导图—你不知道的JavaScript中卷
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • kubernetes资源对象--ingress
  • 关于Android全面屏虚拟导航栏的适配总结
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • #1014 : Trie树
  • #1015 : KMP算法
  • $.ajax()
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (3)llvm ir转换过程
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (javascript)再说document.body.scrollTop的使用问题
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • .jks文件(JAVA KeyStore)
  • .NET CORE 第一节 创建基本的 asp.net core
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net core Swagger 过滤部分Api
  • .NET 简介:跨平台、开源、高性能的开发平台