idea使用git提交代码报异常refusing to merge unrelated histories和unknown option `allow-unrelated-histories‘

简介: idea使用git提交代码报异常refusing to merge unrelated histories和unknown option `allow-unrelated-histories‘

一、异常refusing to merge unrelated histories

使用git提交代码的时候报异常:refusing to merge unrelated histories

解决方法:

这个错误通常是因为两个不同的Git仓库被合并了,而且它们之间没有共同的祖先。这可能会发生在以下情况下:


  1. 你在本地创建了一个新的Git仓库,然后尝试将其推送到远程仓库,但是远程仓库已经存在了一些文件。
  2. 你在远程仓库创建了一个新的Git仓库,然后尝试将其克隆到本地,但是本地仓库已经存在了一些文件。
  3. 你在本地创建了一个新的Git仓库,然后尝试将其合并到另一个已经存在的Git仓库中,但是两个仓库之间没有共同的祖先。


为了解决这个问题,你可以使用以下命令:

1.如果你想将本地仓库推送到远程仓库,可以使用以下命令:


git push origin master --allow-unrelated-histories

这个命令将允许你将本地仓库推送到远程仓库,并将两个仓库合并。


2.如果你想将远程仓库克隆到本地,可以使用以下命令:


git clone <remote-repository-url> --allow-unrelated-histories
  1. 这个命令将允许你将远程仓库克隆到本地,并将两个仓库合并。
  2. 如果你想将本地仓库合并到另一个已经存在的Git仓库中,可以使用以下命令:
git merge --allow-unrelated-histories <branch-name>


这个命令将允许你将本地仓库合并到另一个已经存在的Git仓库中,并将两个仓库合并。


请注意,使用这些命令可能会导致一些冲突,因为两个仓库之间可能存在一些不同的文件。你需要手动解决这些冲突,并确保最终的合并结果是正确的。

二、异常unknown option `allow-unrelated-histories'

如果你执行


git push origin master --allow-unrelated-histories

报异常unknown option `allow-unrelated-histories'的时候,应该怎么办呢


这可能是因为你的 git 版本太旧,不支持 allow-unrelated-histories 选项。


这个选项是在 Git 2.9 版本中引入的,如果你的 Git 版本低于 2.9,那么你需要升级 Git 版本才能使用这个选项。


你可以通过运行以下命令来检查你的 Git 版本:

git --version

如果你的 Git 版本低于 2.9,你可以通过以下方式升级 Git:

  • 在 Windows 上,你可以下载最新版本的 Git 安装程序并运行它来升级 Git。
  • macOS 上,你可以使用 Homebrew 来升级 Git。运行以下命令:
brew update
brew upgrade git
  • 在 Linux 上,你可以使用你的包管理器来升级 Git。例如,在 Ubuntu 上,你可以运行以下命令:
1. sudo apt-get update
2. sudo apt-get upgrade git

升级 Git 后,你应该能够使用 allow-unrelated-histories 选项来合并两个不同的 Git 仓库。

相关文章
|
30天前
|
前端开发 Java 开发工具
Git使用教程-将idea本地Java等文件配置到gitte上【保姆级教程】
本内容详细介绍了使用Git进行版本控制的全过程,涵盖从本地仓库创建到远程仓库配置,以及最终推送代码至远程仓库的步骤。
39 0
|
1月前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
85 16
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
3月前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
473 0
|
4月前
|
JavaScript 前端开发 开发工具
一身反骨的我,用--no-verify绕开了git代码提交限制!
【10月更文挑战第7天】一身反骨的我,用--no-verify绕开了git代码提交限制!
267 0
|
4月前
|
开发工具 git
git如何修改提交代码时的名字和邮箱?
git如何修改提交代码时的名字和邮箱?
582 4
|
4月前
|
Java Linux 开发工具
IDEA中git提交前如何关闭code analysis以及开启格式化代码
【10月更文挑战第12天】本文介绍了在 IntelliJ IDEA 中关闭代码分析和开启代码格式化的步骤。关闭代码分析可通过取消默认启用检查或针对特定规则进行调整实现,同时可通过设置 VCS 静默模式在提交时跳过检查。开启代码格式化则需在 `Settings` 中配置 `Code Style` 规则,并通过创建 Git 钩子实现提交前自动格式化。
1299 3
|
4月前
|
Java Shell 开发工具
git集成IDEA,托管项目实现版本管理
git集成IDEA,托管项目实现版本管理
49 0
|
4月前
|
开发工具 git
idea结合git回到某个提交点
本文介绍了如何在IntelliJ IDEA中使用Git工具回退到之前的提交点,通过Git管理界面查看提交日志,选择特定提交并进行软重置、混合重置或硬重置以撤销后续的更改。
225 0
idea结合git回到某个提交点
|
5月前
|
开发工具 git
IDEA更改远程git仓库地址
【9月更文挑战第27天】本文介绍了两种在IntelliJ IDEA中更改远程Git仓库地址的方法:一是通过图形界面,在VCS设置中直接修改;二是通过IDEA内置的命令行工具使用`git`命令进行更改。具体步骤包括从版本控制菜单进入项目设置、修改远程仓库URL,以及使用`git remote set-url`命令更新仓库地址,并验证修改结果。这些方法适用于项目迁移或更换仓库地址的情况。
1246 6
|
开发工具 git
Git 中 merge 和 rebase 的区别
$ git pull --rebase和$ git pull区别 是git fetch + git merge FETCH_HEAD的缩写,所以默认情况下,git pull就是先fetch,然后执行merge操作,如果加-rebase参数,就是使用git rebase代替git merge 。
28495 0