Git拒绝在变基上合并不相关的历史

2023-10-31

问:

在 git rebase origin/development 期间,Git 显示以下错误消息:

fatal: refusing to merge unrelated histories
Error redoing merge 1234deadbeef1234deadbeef

我的 Git 版本是 2.9.0。它曾经在以前的版本中工作正常。

如何使用新版本中引入的强制标志继续此变基以允许不相关的历史记录?

答1:

huntsbot.com高效搞钱,一站式跟进超10+任务平台外包需求

您可以使用 --allow-unrelated-histories 强制合并发生。

这背后的原因是自 Git 2.9 以来默认行为发生了变化:

“git merge”用于允许合并两个默认情况下没有共同基础的分支,这导致创建现有项目的全新历史,然后被毫无戒心的维护者拉取,这允许将不必要的并行历史合并到现有项目中.该命令已被教导默认情况下不允许这样做,并在罕见事件中使用逃生舱口 --allow-unrelated-histories 选项,该事件合并了两个独立开始其生活的项目的历史。

有关详细信息,请参阅 Git release changelog。

知道合并更改,但此选项不适用于 rebase

是否有任何选项可以永久开启 --allow-unrelated-histories?

@jmarceli “因为这种“两个项目合并”是罕见的事件,所以没有添加始终允许这种合并的配置选项。”。所以不行。

我试图以这种方式为不同的 repo 合并一个分支,但它在我当前的分支上创建了一个新的提交,并且没有保留来自其他 repo 的历史记录。然后我从另一个 repo 中检查了一个本地分支,然后才合并它,突然出现了一个正常的合并提交。诡异的。

非常好,也适用于 git pull。在那次“罕见的事件中,合并了两个独立开始生活的项目的历史”。 git --work-tree="." pull --allow-unrelated-histories

答2:

huntsbot.com – 高效赚钱,自由工作

在我的情况下,每次尝试的错误只是 fatal: refusing to merge unrelated histories,尤其是远程添加 Git 存储库后的第一个拉取请求。

使用 --allow-unrelated-histories 标志以这种方式处理拉取请求:

git pull origin branchname --allow-unrelated-histories

根据 2.9.0 release notes - git pull 已被教导将 --allow-unrelated-histories 选项传递给底层 git merge

如果我使用 README.md 创建新的 Github 存储库,然后第一次将其拉到本地存储库,我总是会看到此错误。很烦人。

对于新的存储库,首先拉取,通常最好以 git clone 开头。

@PardeepJain 请看这个github.com/git/git/blob/master/Documentation/RelNotes/…

这让我停了好几个小时,然后我才意识到,如果默认文件发生这种情况,就必须有一个明显的解决方案来合并这样的文件——我很高兴至少我不是唯一一个遇到这个问题的人!

就我而言,这是因为我在 github 上添加了许可证文件。上面提到的命令(和下面,它们是相同的)有效。

答3:

huntsbot.com聚合了超过10+全球外包任务平台的外包需求,寻找外包任务与机会变的简单与高效。

尝试以下命令:

git pull origin master --allow-unrelated-histories

这应该可以解决您的问题。

这怎么比第一个答案好?! stackoverflow.com/a/37938036/274502 应该是对其进行评论或编辑,以避免冗余和错误信息。

因为它解决了tl:dr

@okandas 祝你好运。浏览某些东西需要比大多数人愿意承认的更多的运气。

这是正确的解决方案

答4:

huntsbot.com高效搞钱,一站式跟进超10+任务平台外包需求

当我首先设置本地存储库时出现此错误。然后我去了 GitHub 并创建了一个新的存储库。然后我跑了

git remote add origin 

当我尝试推动或拉动时,每次都会遇到相同的 fatal: unrelated_histories 错误。

这是我修复它的方法:

git pull origin master --allow-unrelated-histories
git merge origin origin/master
... add and commit here...
git push origin master

我想我们在同一条船上。添加一些东西:我的问题是远程仓库中已经有一些东西了。因此,在我的文件夹中,它删除了 .git 文件夹,运行 git init 并按照 Adithya 所说的操作,但合并部分除外。

如何在mac上按INSERT按钮?实际上,我必须输入提交消息并从命令行合并,但我不知道如何从命令行执行。

它打开vim吗?如果是这样,它只是 SHIFT + :

甚至我首先创建了 GitHub 存储库,并且正在执行添加存储库的那些命令。

这是一个非常好的答案。关键是你必须强制拉然后合并本地和远程仓库。

答5:

与HuntsBot一起,探索全球自由职业机会–huntsbot.com

为此,输入命令:

git pull origin branchname --allow-unrelated-histories

例如,

git pull origin master --allow-unrelated-histories

参考:

GitHub unrelated histories issue

感谢第一次为我拉它的作品“git pull origin master --allow-unrelated-histories”

应该对其进行评论或编辑,以避免冗余和错误信息。 stackoverflow.com/a/37938036/274502

答6:

huntsbot.com – 高效赚钱,自由工作

git pull origin  --allow-unrelated-histories

你将被引导到一个 Vim 编辑窗口:

插入提交消息

然后按 Esc(退出“插入”模式),然后按 :(冒号),然后按 x(小“x”),最后按 Enter 退出 Vim

git push --set-upstream origin <分支>

Ctrl+X 不会让你离开 Vim

但 :x 会

感谢您指定如何出去;我完全迷失了,所有其他答案似乎都认为这很明显!

答7:

huntsbot.com全球7大洲远程工作机会,探索不一样的工作方式

我运行了这个命令,问题得到了解决。

git pull origin branchName --allow-unrelated-histories

查看此 page 了解更多信息。

git merge origin/main localBranchName --allow-unrelated-histories 为我工作。

答8:

huntsbot.com提供全网独家一站式外包任务、远程工作、创意产品分享与订阅服务!

1.解决问题

执行 git pull origin master 时出现错误:

fatal: refusing to merge unrelated histories

运行以下命令之一

 # It could be master
 git pull origin master --allow-unrelated-histories
 # Or main
 git pull origin main --allow-unrelated-histories
 # Or just try with origin 
 git pull origin main --allow-unrelated-histories

如果它打开一个 nano 编辑器,您可以保存并使用 CTRL + x 关闭

现在将更改推送到本地

 git push

2.意义

错误:

“致命:拒绝合并不相关的历史” Git 错误发生在两个不相关的项目合并时(即,不知道彼此存在且提交历史不匹配的项目)。

命令 GIT HUB DOCS --allow-unrelated-histories: --allow-unrelated-histories

默认情况下, git merge 命令拒绝合并不具有共同祖先的历史。当合并两个独立开始的项目的历史时,此选项可用于覆盖此安全性。由于这是一种非常罕见的情况,因此默认情况下不存在启用此功能的配置变量,也不会添加。

https://i.stack.imgur.com/7cpDZ.png

参考

推荐:“致命:拒绝合并不相关的历史”Git 错误

Git 2.9 发行说明

更多关于堆栈溢出

推荐使用–allow-unrelated-histories的很好的解释和警告:拒绝合并不相关的历史”失败,同时拉到恢复的存储库

如果 --allow-unrelated-histories 不起作用:致命:添加 git remote 后拒绝合并不相关的历史

Git 拒绝合并不相关的历史。什么是“无关历史”?

该用户使用 Github Desktop:如何解决上传项目到 github 时“拒绝合并无关历史”的问题?

Git 因致命错误而失败。拒绝将不相关的历史与 git push 合并?

答9:

huntsbot.com高效搞钱,一站式跟进超10+任务平台外包需求

我有同样的问题。尝试这个:

git pull origin master --allow-unrelated-histories 

git push origin master

应该对其进行评论或编辑,以避免冗余和错误信息。 stackoverflow.com/a/37938036/274502

答10:

huntsbot.com洞察每一个产品背后的需求与收益,从而捕获灵感

对于 Android Studio 和 IntelliJ:

首先,提交所有内容并解决任何冲突。

然后从IDE下方打开终端并输入:

git pull origin master --allow-unrelated-histories

现在可以推了。

它是一个 git 命令,与 Android Studio 或 Inteliji 无关

@AlpitAnand是的,因为这个问题和android studio或者IntelliJ没有直接关系,但是我在android studio中写了处理这个问题的方式

答11:

保持自己快人一步,享受全网独家提供的一站式外包任务、远程工作、创意产品订阅服务–huntsbot.com

试试git pull --rebase development

这解决了我的问题。这是问题的开始

这应该是:git pull --rebase=preserve --allow-unrelated-histories development

@RiccardoMurri 刚刚尝试过,我不会再这样做了。我的新仓库中有一些示例初始化文件,以及我的本地仓库几个月的提交。运行它(使用 newOrigin branch 而不是 development)将初始提交添加到本地分支的顶部,从而有效地从中删除了几乎所有内容。我希望新遥控器的初始提交位于底部。

原文链接:https://www.huntsbot.com/qa/g1PB/git-refusing-to-merge-unrelated-histories-on-rebase?lang=zh_CN&from=csdn

huntsbot.com – 程序员副业首选,一站式外包任务、远程工作、创意产品分享订阅平台。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Git拒绝在变基上合并不相关的历史 的相关文章

随机推荐

  • Gravatar镜像源自建教程,使用CDN加速无需配置反代

    什么是 Gravatar Gravatar 是 Globally Recognized Avatar 的缩写 是 Gravatar 推出的一项服务 意为 全球通用头像 如果在 Gravatar 的服务器上放置了你自己的头像 那么在任何支持
  • D3DCompiler_47.dll丢失怎么解决-D3DCompiler_47.dll丢失怎么办

    d3dcompiler47dll丢失怎么解决 很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑的该dll文件没有或者损坏了 这时你只需下载这个d3dcom
  • 大数据从入门到精通(超详细版)之HDFS详解,学不会算我输!!!

    前言 嗨 各位小伙伴 恭喜大家学习到这里 不知道关于大数据前面的知识遗忘程度怎么样了 又或者是对大数据后面的知识是否感兴趣 本文是 大数据从入门到精通 超详细版 的一部分 小伙伴们如果对此感谢兴趣的话 推荐大家按照大数据学习路径开始学习哦
  • eProsima Fast DDS Documentation翻译

    eProsima Fast DDS Documentation eProsima Fast DDS 是 DDS Data Distribution Service 协议的一个C 语言实现版本 该协议由 Object Management G
  • wind matlab接口函数,使用wind量化接口函数wss时出现问题'CWSSService: repeated windcodes.'...

    我之前运行了一次程序 是可以运行的 在把MATLAB关掉一次后 再打开运行 从WIND中下载的数据中只有这一句提示 本来应该是下载某年某月末所有非ST 非停牌 上市超过六个月的A股的收盘价和PE值的 代码如下 load mydata mat
  • Python爬虫(入门+进阶)学习笔记 2-5 Scrapy的中间件

    上一节我们学习怎么去保存爬取的结果 然而大多数时候裸奔的请求很容易被网站反爬技术识别 导致并不能获取到我们想要的数据 我们该怎么做呢 中间件就可以帮你解决这些事 下载中间件 Downloader middlewares Scrapy框架中的
  • spring-jms

    为什么要在博客上总结一下 那么多优秀的博客 网站上的都很清楚 这就好比老师的板书写的再好 和你半毛钱关系没有 总结理解消化为自己的东西才有用 如果看了就能记住能懂 那人人都是专家 因此总结 归纳尤为重要 百度百科给出的 定义 JMS Jav
  • vtk vs2015 win10 64bit 编译注意事项

    记录几个凌乱的关键点 事先安装Qt 我得是5 8版本 需要官网注册之类的 1 关于Python 编译带tcl java python的 vtk 需要很多繁琐的步骤 记录整个过程太恐怖了 vtk暂时不支持python3 支持的还是python
  • XSS Payload绕过云锁学习

    前言 对于我这个菜鸟来说 我通过谷歌百度学习到很多前辈的资料 甚至每句话都是他的指导 我也很感激前辈的为我们铺设的道路 让我们更快的成长起来 我也乐于分享 可能有些知识点过于单调或者久远 请见谅 WAF 前几天花了10买了一个月的服务器 换
  • springboot注解@Order的使用

    使用order属性 设置该类在spring容器中的加载顺序 例如有三个类 Order1 Order2 Order3 其中Order1类如下 Component 把类交给spring容器管理 Order 1 使用order属性 设置该类在sp
  • scanf函数返回值的具体应用

    scanf函数返回值的具体应用 include
  • 小程序动态图片加载失败替换本地图片

    希望效果图 前言 写一个新闻列表 一个页面里就有几十条数据 虽然分页查询 但图片有时候还会加载失败 网速 图片大小等原因 下面说说我的思路 我把新闻列表封装成了一个子组件 1 在子组件标签image中放入error事件 传入index 2
  • 华为8年软件测试工程师感悟 功能测试如何体现自己的价值?

    无论在那个行业都有新人 而每个新人在刚入行时都会经历迷茫到精进的过程 大多数的测试人员也是如此 毕竟谁也不是一开始就是行业大佬 接下来 针对题主提出的问题以及描述的所处情况给大家讲一讲测试新人入行初期如何去摆脱迷茫做好自我提升 PS 这里有
  • Linux学习(十):查看文件系统(dumpe2fs)

    b 列出保留为坏道的部分 一般用不到 h 仅列出superblock的数据 不会列出其他的区块内容 1 找出我的根目录磁盘文件名 并查看文件系统的相关信息 ps df 调出目前挂载的设备 ps Filesystem volume name
  • suse linux下修复文件系统,Suse 11 下一次文件系统修复的案例 .

    操作系统 Suse Linux 11 文件系统 ext3 错误现象 X日 接到告警 检查文件系统 dev sda1发现写入报只读 检查IP存储有告警 随即umount img 但卸载后无法正常挂载 fdisk l显示IO错误 重启应用服务器
  • 如何判断文件是否读到文件结尾

    二进制文件 头文件 include define feof stream stream gt flag IOEOF feof 函数用来检测当前文件流上的文件结束标识 判断是否读到了文件结尾 其原型为 int feof FILE stream
  • 1. Ubuntu 20.04 初始化root密码

    1 以普通用户登录系统 创建root用户的密码 在终端输入命令 sudo passwd root 然后输入设置的密码 输入两次 这样就完成了设置root用户密码了 注意Linux系统下密码是没有回显的
  • servlet.Ajax实现上传文件进度条

    这里关于servlet如何上传文件就先不说了 将如何得到已经上传的文件数据的百分比 首先我们先写一个类这个类要实现ProgressListener这个接口 实现里面的update 方法 代码如下 package com test servl
  • 关于使用2d照片进行3d建模

    转载感言 作者一句业余 搞得弟兄们面红耳赤了 感谢作者的可行性分析 Autodesk 的 123D Catch 让我们能够很简单的根据一组照片构建3D物体 你只需要从各个角度拍摄希望建模的物体 然后通过 123D Catch 将照片上传到
  • Git拒绝在变基上合并不相关的历史

    问 在 git rebase origin development 期间 Git 显示以下错误消息 fatal refusing to merge unrelated histories Error redoing merge 1234de