Git多个远程仓库不同步时的补救办法

交互客
• 阅读 2714

git本地仓库是可以与多个远程仓库关联的,如果想知道怎么配置,请参考Git如何使用多个托管平台管理代码

git remote关联了多个远程仓库时,总会遇到一些问题。今天就遇到了两个远程仓库不一致导致无法push的情况。

远程仓库间出现差异

大概情况是这样的,我是一个本地仓库关联了githubgitee两个远程仓库。

git remote add all git@github.com:cumt-robin/BlogFrontEnd.git
git remote set-url --add all git@gitee.com:tusi/BlogFrontEnd.git

由于不小心在远程仓库gitee上手动修改了README.md文件,导致两个远程仓库出现了差异。所以当我在本地完成了一部分功能,准备提交到远程仓库时,出现了报错。

$ git push all --all
Everything up-to-date
To gitee.com:tusi/BlogFrontEnd.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@gitee.com:tusi/BlogFrontEnd.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

解决方案

由于是gitee的仓库多修改了一点东西,因此在本地再加一个remote,单独关联gitee

$ git remote add gitee git@gitee.com:tusi/BlogFrontEnd.git

gitee的代码拉到本地master

$ git pull gitee master
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (1/1), done.
From gitee.com:tusi/BlogFrontEnd
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> gitee/master
Already up to date!
Merge made by the 'recursive' strategy.

再将本地master推送到远程all

$ git push all --all
Enumerating objects: 2, done.
Counting objects: 100% (2/2), done.
Delta compression using up to 6 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 499 bytes | 499.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0)
To github.com:cumt-robin/BlogFrontEnd.git
   1557ece..8391333  master -> master
Enumerating objects: 2, done.
Counting objects: 100% (2/2), done.
Delta compression using up to 6 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 917 bytes | 917.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0)
remote: Powered By Gitee.com
To gitee.com:tusi/BlogFrontEnd.git
   8912ff5..8391333  master -> master

问题得以解决!


首发连接


扫一扫下方小程序码或搜索Tusi博客,即刻阅读最新文章!

Git多个远程仓库不同步时的补救办法

点赞
收藏
评论区
推荐文章
皮卡皮卡皮 皮卡皮卡皮
4年前
git 本地代码提交到远程仓库
git将本地代码添加到远程仓库1.本地初始化使用gitinit进行初始化可以使用lsa就可以看到.git文件2.创建远程仓库点击复制仓库地址3.连接远程仓库shellgitremoteaddoriginhttps://gitee.com/test/test.git4.将远程仓库的文件pull到本地gitpullrebase
菜园前端 菜园前端
2年前
Gitee创建仓库使用指南来喽!
原文链接:gitee基于Git的代码托管和研发协作平台。这个是我们国内通用的代码管理仓库,除此之外还有比较火的国外的代码管理仓库Github。国内用户访问Github网络不太稳定,所以我这边先用国内的进行讲解。gitee官方地址创建git仓库1.登录账号后
放学路上 放学路上
3年前
git基本操作
一、Git下载安装1、git官网:https://gitscm.com/2、官网下载较慢也可以去找国内镜像:https://npm.taobao.org/mirrors/gitforwindows/3、安装完成后鼠标右键出现以下标志代表安装完成:二、git上传代码到远程仓库(以coding为例)1、在磁盘本地创建一个git仓库,如下图创建一个文件夹gitcs
Wesley13 Wesley13
3年前
GIT命令大全
Git命令大全Git最小配置某账号下所有的Git仓库都有效gitconfigglobaluser.name'您的名称'gitconfigglobaluser.email'您的Email'只对当前Git仓库有效gitconf
Stella981 Stella981
3年前
Git提交本地库代码到远程服务器的操作
在本地磁盘创建目录mkdirpath进入所创建的目录cdpathgitinit添加远程仓库的代码gitremoteaddorigingit@xbc.me:wordpress.git设置Gitgitconfigglobaluser.name"your_name"
Stella981 Stella981
3年前
Git 手册
gitinit                                                 初始化本地git仓库(创建新仓库)gitconfigglobaluser.name"xxx"                      配置用户名gitconfigglobaluser.emai
Stella981 Stella981
3年前
Github远程仓库提交代码步骤
1.克隆远程仓库1)当没有设置默认目录时gitclone仓库地址本地存放目录//没有目录的情况2)当设置了本地存放目录时先打开路径,命令:cdpath1.初始化git创建git仓库:gitinit查看文件目录: gitstatus
Stella981 Stella981
3年前
Git(五)IDEA应用Git
一.IDEA客户端git1.提交代码到本地仓库1. 关联Git,创建本地库关联git!(https://oscimg.oschina.net/oscnet/c852b4f7c2f8a27e7e2fff5841f94123756.png)!
Stella981 Stella981
3年前
Git连接GitLab远程仓库
1、简介远程仓库是指托管在网络上的项目仓库,现在互联网上有很多项目托管平台,比如github、gitlab等。为了不公开自己项目代码,可以在自己的服务器上搭建自己的项目仓库,最常见的是搭建GitLab。本地Git与远端服务器GitLab之间连接方式主要分为:SSH方式和HTTP方式。HTTP方式:这种方式要求project在创建的时候只
Wesley13 Wesley13
3年前
Ubutun 16.04安装git服务器
GitHub就是一个免费托管开源代码的远程仓库。既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。本文演示如何使用Ubutun16.04搭建一台git服务器。搭建之前建议先aptgetupdate一下,可以避免一些错误。安装并配置gitsudoaptgeti
Stella981 Stella981
3年前
GitFlow原理浅析
一、Git优点分布式存储,本地仓库包含了远程仓库的所有内容.安全性高,远程仓库文件丢失了也不怕优秀的分支模型,创建/合并分支非常的方便方便快速,由于代码本地都有存储,所以从远程拉取和分支合并时都非常快捷当分支过多时,如何管理这些分支呢?我们团队采用了GitFlow的模式
交互客
交互客
Lv1
戍客望边邑,思归多苦颜。
文章
3
粉丝
0
获赞
0