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

git Fork或者git clone克隆别人的项目到自己的仓库如何保持原仓库同步

一、问题描述

有时候我们会clone别人的项目到自己的仓库来进行二次开发,开发好之后提交到自己的仓库,如有原仓库有更新了,可以选择性的进行同步

二、解决方法

这里以ruoyi-vue-pro得前端项目来进行演示,创建一个目录,在目录下随便创建一个文件

然后在gitee上创建自己的仓库,然后在该目录下依次执行如下命令:

git init 
git add .
git commit -m "first commit"
git remote add origin https://gitee.com/xxxx/xxxx
git push -u origin "master"

此时执行完成,就会将项目提交到自己的仓库中去了,然后可以执行命令查看远程仓库地址:

git remote -v

此时就一个仓库

添加别人的代码仓库为你的远程仓库

git remote add upstream https://gitee.com/yudaocode/yudao-ui-admin-vue3.git

再次查看

git remote -v

就会多出一个仓库地址

从远程仓库获取最新的更新

git fetch upstream

切换到自己的分支

git checkout master

将别人的更新合并到你的当前分支

git merge upstream/master

此时有可能会报错:

fatal: refusing to merge unrelated histories

造成 fatal: refusing to merge unrelated histories错误的原因有以下几点:


1.有一个包含一些提交的新 Git 存储库,然后,您尝试从现有的远程仓库中提取,合并变得不兼容,因为分支和远程拉取的历史不同,当你试图合并两个完全不相关的分支时,Git 看到了这种情况,它不知道该怎么做。
2.目录有问题.git,它可能在某些时候被意外删除或损坏,如果您克隆或清理了项目,则可能会发生这种情况,此处发生错误是因为 Git 没有有关本地项目历史的必要信息。
3.当您尝试从远程仓库推送或拉取数据时,分支位于不同的HEAD位置,并且由于缺乏共性而无法匹配。

使用--allow-unrelated-histories标志允许合并不相关的历史,这是一种解决问题的快速方法,但请谨慎使用,因为它将两个不同的历史合并到一个新的共同历史中,由于我们是首次,所以无所谓

git merge upstream/master --allow-unrelated-histories

请注意,这可能会导致冲突,我们需要解决这些冲突后再次提交。



提交

git push origin master

相关文章:

  • flume配置----a1.sources.r1.positionFile=xxxx.json
  • mysql如何创建并执行事件?
  • Mysql union语句
  • Bagging与Boosting的应用与优势
  • 计算机网络期末复习
  • 【设计模式-12】代理模式的代码实现及使用场景
  • 【SpringBoot】94、SpringBoot中使用MyBatis-Plus实现数据权限管理
  • 上海交通大学、中科大 开源镜像站停止 Docker Hub 仓库镜像支持后的可用替代源
  • springboot宠物领养系统-计算机毕业设计源码07863
  • python2.7pip报错:UnicodeDecodeError: ‘ascii‘ codec can‘t decode
  • 运维监控系统
  • 大数据安全经典面试题及回答(上)
  • 2024 年最新 windows 操作系统部署安装 redis 数据库详细教程(更新中)
  • 第二十一篇——信道:信息通道的容量有边界嘛?
  • 成员变量和for循环里面的变量不冲突原因
  • 2018一半小结一波
  • GitUp, 你不可错过的秀外慧中的git工具
  • input的行数自动增减
  • Java,console输出实时的转向GUI textbox
  • Java超时控制的实现
  • leetcode-27. Remove Element
  • Node 版本管理
  • PAT A1017 优先队列
  • ViewService——一种保证客户端与服务端同步的方法
  • 对象引论
  • 给第三方使用接口的 URL 签名实现
  • 区块链技术特点之去中心化特性
  • - 转 Ext2.0 form使用实例
  • 自动记录MySQL慢查询快照脚本
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • # 服务治理中间件详解:Spring Cloud与Dubbo
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (27)4.8 习题课
  • (5)STL算法之复制
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (十六)、把镜像推送到私有化 Docker 仓库
  • (贪心 + 双指针) LeetCode 455. 分发饼干
  • (图文详解)小程序AppID申请以及在Hbuilderx中运行
  • (万字长文)Spring的核心知识尽揽其中
  • (一)、python程序--模拟电脑鼠走迷宫
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • (转载)(官方)UE4--图像编程----着色器开发
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • **《Linux/Unix系统编程手册》读书笔记24章**
  • .libPaths()设置包加载目录
  • .naturalWidth 和naturalHeight属性,
  • .net core Redis 使用有序集合实现延迟队列
  • .net mvc actionresult 返回字符串_.NET架构师知识普及