news 2026/3/24 23:14:16

Git 一个本地仓库同时推送到两个远程仓库(详细教程)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Git 一个本地仓库同时推送到两个远程仓库(详细教程)


一. 引言

我们在实际工作中经常会涉及项目备份问题,尽管公司都有自己的仓库,但是呢很多情况下我们都还需要另外一个仓库。
一方面公司仓库通常需要公司内网或者链接VPN,有时候临时要用可能并不方便。

另一方面可能自己也希望备份一份,或者是一个仓库的成员不够用。

本篇博客会通过完整的实战步骤,来介绍如何实现Git双远程仓库同步。

二. 查看当前的远程仓库

执行命令:

git remote -v

通常来讲输入如下:

origin https://***@bitbucket.org/louis_private_project/ignoremodules.git (fetch) origin https://***@bitbucket.org/louis_private_project/ignoremodules.git (push)

这就表示现在只绑定了一个远程仓库。

它的含义是:

  • 拉取代码(fetch/pull)
  • 推送代码(push)

Git 把拉取和推送地址分开显示了,默认情况下,pull 和 push 用的是同一个远程仓库。

三.添加第二个远程仓库(以 Gitee 为例)

我们就以Gitee仓库作为第二个远程仓库为例进行说。

3.1 命名规范说明

当前项目我们已经绑定了bitbucket,并且默认remote名称为:origin。

那么我们在添加第二个远程仓库时,一定要注意名字不能重复,那就不能再叫origin了,建议起一个有意义的名字,常见的命名方式:

gitee origin_gitee backup mirror

例如:

主仓库:origin(bitbucket)

镜像仓库:gitee(gitee)

这样后续操作时更清晰,也不容搞混。

3.2 提前准备远程仓库

在本地添加 remote 之前,需要先在 Gitee 平台上:手动创建一个空仓库。

创建完成之后,会有相关提示告诉我们如何链接远程仓库,但是我们是第二个远程仓库,因此别着急按它的提示去操作。

创建完成后,会得到一个仓库地址,例如:

https://gitee.com/***/ignore-modules.git

3.3 添加第二个远程仓库

远程仓库创建完成后,就可以在本地进行绑定。

我们就按照已有仓库的提示来操作,但是记得修改远程分支名称为“gitee”而不是“origin”:

git remote add gitee https://gitee.com/***/ignore-modules.git

命令格式说明:

git remote add <remote名称> <仓库地址>

在本例中:

  • remote名称:gitee
  • 仓库地址:https://gitee.com/***/ignore-modules.git

这就相当于给当前项目新增了一个名为gitee的远程仓库。

3.4 查看绑定结果

这次我们再来查看当前项目的远程仓库地址:

git remote -v

这次可以看见有四条输出:

gitee https://gitee.com/***/ignore-modules.git (fetch) gitee https://gitee.com/***/ignore-modules.git (push) origin https://***@bitbucket.org/louis_private_project/ignoremodules.git (fetch) origin https://***@bitbucket.org/louis_private_project/ignoremodules.git (push)

这就说明当前项目已经绑定了两个远程仓库:

  • origin -> Bitbucket
  • gitee -> Gitee

拉取和推送都可以正常使用,至此,第二个远程仓库添加完成。

四.推送与拉取:如何使用多个远程仓库

我们已经成功为本地仓库绑定了两个远程仓库:

gitee https://gitee.com/***/ignore-modules.git (fetch) gitee https://gitee.com/***/ignore-modules.git (push) origin https://***@bitbucket.org/louis_private_project/ignoremodules.git (fetch) origin https://***@bitbucket.org/louis_private_project/ignoremodules.git (push)

当前项目已经同时关联了 Gitee 和 Bitbucket 两个远程仓库。

接下来要解决的问题就是:如何在多个远程仓库之间进行推送和拉取?

4.1 指定远程仓库进行推送

当项目存在多个 remote 时,Git 不会自动帮你选择目标仓库。

此时推送需要显式指定远程名称。

基本格式:

git push <remote名> <分支名>

例如:

推送到 Bitbucket(origin):

git push origin main

推送到 Gitee:

git push gitee main

这样可以做到:按需选择同步目标仓库,适合偶尔同步、手动控制场景。

4.2 同时推送到多个远程仓库(推荐)

如果你希望:一次 push,同步多个仓库,可以给同一个 remote 绑定多个 push 地址。

4.2.1 给 origin 添加多个 push 地址

例如,将 Gitee 也绑定到 origin:

git remote set-url --add origin https://gitee.com/***/ignore-modules.git

执行后查看:

git remote -v

结果类似:

origin https://***@bitbucket.org/... (fetch) origin https://***@bitbucket.org/... (push) origin https://gitee.com/***/... (push)

说明:

  • fetch:仍然从 Bitbucket 拉取
  • push:同时推送 Bitbucket + Gitee
4.2.2 使用方式

之后只需执行:

git push origin main

即可自动同步两个仓库。

非常适合做: 镜像仓库,自动备份。

五. 结语:合理使用多远程仓库,让项目管理更高效

通过前面的介绍,我们已经完整实践了:

  • 如何为本地仓库添加多个远程仓库
  • 如何指定不同仓库进行推送
  • 如何实现一次命令同步多个平台

可以看到,Git 本身已经为多仓库场景提供了非常成熟、灵活的支持机制。

关键在于:是否合理使用。

使用建议(经验总结)

结合实际项目经验,这里给出几种常见场景下的推荐方案,供参考。

5.1. 个人项目 / 开源项目

适合人群:个人开发者、开源作者

推荐方式:

主仓库 + 镜像仓库 配置多个 push 地址

特点:

  • GitHub 作为主仓库
  • Gitee 作为国内镜像
  • 一次 push,多端同步

优点:

  • 省心、省事、自动备份。

5.2. 公司项目 + 个人备份

适合人群:企业开发者

推荐方式:

origin:公司仓库 gitee:个人备份仓库 分别维护

特点:

  • 公司仓库作为唯一主仓
  • 个人仓库仅做备份
  • 不影响团队协作流程

优点:

  • 安全、合规、风险可控。

5.3. 重要项目 / 长期维护项目

适合人群:核心业务项目、长期项目

推荐方式:

主仓 + 备份仓 + 镜像仓 多端同步

特点:

  • 至少两个平台备份
  • 防误删、防权限回收
  • 防平台风险

优点:

  • 极高安全性,降低不可控风险。

5.4. 拉取单一来源,推送多端同步(推荐 )

适合大多数项目的通用方案:

fetch:主仓库 push:主仓 + 镜像仓

特点:

  • 统一代码来源
  • 自动多端同步
  • 避免分支混乱

这是实际工作中最常用、最稳妥的一种配置方式。

写在最后

很多 Git 的高级用法,其实并不复杂,只是平时很少有人系统整理。

希望这篇文章,能帮你真正理解:

Git 多远程仓库不是技巧,而是一种工程习惯。

如果你觉得本文对你有帮助,欢迎点赞、收藏、关注。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/15 17:54:42

谷歌为BigQuery增添对话式智能体和自定义工具

谷歌在其BigQuery数据仓库中新增了对话式分析功能&#xff0c;该公司表示这将允许企业数据团队和业务用户以自然语言的方式询问数据相关问题&#xff0c;从而加速AI应用场景的数据分析工作。对话式分析智能体的工作原理这个目前处于预览阶段的智能体&#xff0c;可以在BigQuery…

作者头像 李华
网站建设 2026/3/15 17:54:40

mss 截图所有的显示器 python

import mss import matplotlib.pyplot as plt from PIL import Image import platform# 自动启用中文字体 def setup_chinese():sys platform.system()if sys "Windows":plt.rcParams[font.sans-serif] [Microsoft YaHei, SimHei]elif sys "Darwin":…

作者头像 李华
网站建设 2026/3/24 14:26:41

小程序毕设项目:基于Vue+Node.js的民艺探索传承之旅微信小程序设计(源码+文档,讲解、调试运行,定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/3/21 17:46:57

CANN模型量化:从FP32到INT4的极致压缩与精度守护实战

CANN组织链接&#xff1a;https://atomgit.com/cann ops-nn仓库链接&#xff1a;https://atomgit.com/cann/ops-nn 当端侧设备内存仅256MB却需运行1.2GB模型&#xff0c;当INT8量化导致精度暴跌15个百分点——模型量化已成为AI落地的“最后一公里”。传统量化工具深陷精度损失黑…

作者头像 李华
网站建设 2026/3/22 12:34:20

【课程设计/毕业设计】基于springboot的养老院管理系统养老院预约系统的设计与实现小程序设计【附源码、数据库、万字文档】

java毕业设计-基于springboot的(源码LW部署文档全bao远程调试代码讲解等) 博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、…

作者头像 李华
网站建设 2026/3/15 14:02:08

探秘大数据领域数据架构的前沿技术

探秘大数据领域数据架构的前沿技术 一、引言 在当今数字化时代,数据如同一座蕴藏无限价值的宝藏矿山。随着各行业数字化转型的加速,数据量呈爆炸式增长,大数据技术应运而生,成为挖掘这座矿山价值的关键工具。而数据架构作为大数据技术的核心骨架,决定了数据的存储、处理…

作者头像 李华