当双方都被删除时,为什么 git 给我一个“删除合并冲突”?

2023-12-25

我正在合并更新版本master进入我的分支。在 master 中,一个文件已被删除,我也删除了。 Git 给了我以下内容:

Deleted merge conflict for 'Lib/SharedBL/WebServices/WebAPI/Admin/Admin.cs':
  {local}: deleted
  {remote}: deleted
Use (m)odified or (d)eleted file, or (a)bort?

为什么这是一个冲突?两边都被删除了,那么 git 肯定应该删除它吗?


首先,我们需要快速了解一些背景术语。当你跑步时git merge xyz, Git 识别three承诺:

  • 您当前的提交:HEAD, “当地的”,--ours, 等等。我喜欢这样称呼L对于左或本地。
  • 另一个提交:由xyz:“远程”、“其他”、--theirs, 等等。我喜欢这样称呼R对于右侧或远程。
  • 第三次提交:第一个提交L and R有共同点。这是合并基地 commit.

Git 计算与合并基础的差异L,第二个与合并基不同R。这两个差异可以对合并库中存在的文件进行不同的更改。

If Lib/SharedBL/WebServices/WebAPI/Admin/Admin.cs是合并基础提交中的一个文件,并且在两个头中都被删除,不会有冲突,并且不会发生这种情况。

然而,如果Lib/SharedBL/WebServices/WebAPI/Admin/Admin.cs存在于合并基地中并且是renamed(也许也修改过)在一次提交中但是deleted在另一个提交中,将会出现重命名/删除冲突。在这种情况下,git mergetool不会找到Lib/SharedBL/WebServices/WebAPI/Admin/Admin.cs在任一L or R.

换句话说,该特定文件将在工作树中删除。但是……应该是这样吗?您应该从基本提交恢复文件吗?这git mergetool脚本不知道。它向您提出了这个问题。

请注意,如果您从基本提交恢复文件,您仍然会拥有重命名的文件。由您来决定对此采取什么措施。

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

当双方都被删除时,为什么 git 给我一个“删除合并冲突”? 的相关文章

  • 如何仅对最新合并后的提交进行变基?

    考虑以下场景 我从master那里检查了一个分支 我做了一些承诺 我合并了更新的master 我做了更多的承诺 现在我想要从第 4 点开始变基提交 以便从第 2 点开始的提交不受影响 所以如果我最初有 1 2 x x x x x x x m
  • 测量大型源树中的“接近度”

    作为我之前提出的问题的一部分找到两个来源之间的最佳匹配 https stackoverflow com questions 13898659 finding what git commit some code spawned from 其中
  • Xcode - 使用 SSH 身份验证添加存储库时出现身份验证失败错误

    我正在尝试通过 Xcode gt 设置 gt 帐户添加存储库 但我被困在正确的地址上 我们的存储库地址非常简单 my domain com port project name 通过 SSH 密钥进行身份验证 有人可以帮助我了解这里发生了什么
  • 回购:找不到命令?

    我是 git 和 repo 的新手 我使用的是window 7 所以我使用cygwin 我已经从 cygwin 安装程序安装了 git 之后我尝试在 cygwin 中使用以下命令进行存储 repo init u git android gi
  • 将各种提交合并为一而不合并

    是否可以加入各种提交 这是我的情况 我的应用程序在 OSX 10 6 和 10 7 中运行 我已经修复了 10 6 的一些内容 然后提交了 更改为 10 7 并再次修复修复程序 以便它们兼容 然后再次提交 然后返回到 10 6 并再次检查并
  • 如何使用 vim 作为“git log”编辑器?

    当我跑步时git log 编辑器到底是什么git log正在使用 Also 无论如何我可以使用吗vim作为我的默认编辑器git log 如果我想搜索 git 日志 最好的方法是什么 现在我正在做类似的事情 git log grep bla
  • Git 日志历史记录

    对于版本控制来说 重要的一件事是知道谁做了什么更改 如果某些内容发生了变化 而我不知道为什么要进行更改 我会查看历史并询问进行更改的人 当我探索 git 时 让我对这个功能有点紧张的一件事是它似乎很容易伪造 是什么阻止我将同事姓名 电子邮件
  • 将更改从通用差异导入 git 存储库

    我正在尝试将更改从一个源代码控制系统 专有且复杂 导入到 git 存储库中 我目前正在通过运行一个脚本来执行此操作 该脚本只是按顺序同步到每个修订版并将其提交到 git 存储库 但由于各种原因 这已变得不可行 对于每个修订版 我都可以获得描
  • IntelliJ Git 集成 - git --version 空输出

    我目前正在尝试使用 IntelliJ 2016 2 的 Git 集成 但每当我将其指向可执行文件时 我都会遇到以下问题 这在技术上并不会阻止集成工作 但它确实会导致更新索引等问题 我正在运行 Windows 7 完全全新安装 但我在以前的
  • 将存储库移至另一台计算机

    我已将存储库从计算机 A 移至计算机 B 我已验证等待推送的提交仍在 B 上 但整个存储库 每个文件 均未暂存 我不想添加它们并将它们作为提交推送 因为从复制存储库到粘贴它 我没有更改每个文件 当我移动存储库时 它只有等待推送的提交 而不是
  • 使用 git filter-branch 然后 git push --force 清除大文件后,远程(Gitlab)上的 Git 存储库大小仍然很大

    我已按照 Gitlab 文档中有关 使用 Git 减少存储库大小 的说明进行操作 通过从历史记录中清除大文件 https docs gitlab com ee user project repository reducing the rep
  • 我可以将我的heroku git repo导入bitbucket吗?如何?

    我的笔记本电脑坏了 我需要从另一台计算机上编码 我正在使用 Heroku 我想将最新版本的代码从 Heroku 获取到另一台机器 据我了解 强烈建议使用 GitHub 或 BitBucket 获取适当的远程存储库 我决定尝试一下 BitBu
  • Git:如何维护项目的两个分支并仅合并共享数据?

    假设我有一个项目的两个分支 IMClient MacOS 和 IMClient Windows 它们的代码仅 比方说 一个目录 main 有所不同 所有其他目录都包含与系统无关的代码并且可以互换 有些工作人员在 Windows 版本上工作
  • “git merge --squash”的正确用例是什么?

    有些人喜欢git merge squash由于以下原因 压缩到单个提交使您有机会清理混乱的 WIP 提交 并为您要合并的更改提供良好的理由 https coderwall com p qkrmjq git merge squash http
  • 在功能分支上运行测试

    我有一个构建配置 其中包含连接到 git 分支的测试 VCS 根dev 3 个构建步骤和 1 个触发器 这些是我的构建步骤 构建测试 运行测试 构建和部署 我想为分支运行所有这些构建步骤dev但只有其中两个 构建和运行测试 用于分支匹配fe
  • Git 身份验证 - 以新用户身份拉取

    以下命令集可以正常工作 mkdir carboncake cd carboncake git init git remote add origin email protected cdn cgi l email protection rep
  • 如何将 git-svn 与 svn+ssh url 一起使用

    我喜欢在cygwin中使用git svn clone使用我们公司 svn 存储库的命令 这个的网址是svn ssh svn
  • 仅将单个文件放入 git 子模块/存储库中

    我在 git 源代码存储库中有一个特定文件 其中包含生产设置 密码 我想限制此文件 以便只有制作团队的成员才能看到它 但是 我想控制它的变化 我考虑过在 git 中使用子模块 然后限制对新存储库的访问 然而 git 似乎需要子模块的整个子目
  • 运行 flutter doctor 吐出错误:标准错误:致命:坏对象 HEAD

    我已经从官方网站安装了 Flutter 和 Android Studio 我是 Git GitHub 移动开发和 Android 开发的新手 我试图在命令提示符 Windows 10 中运行 flutter doctor 命令 但是 它会以
  • git 从存储中删除文件

    我有一个藏匿处 里面有一堆文件 但由于文件冲突 我无法应用我的存储 我已经在我的存储中发现了有问题的文件 我想将其删除 如何从存储中删除单个文件而不破坏整个文件 存储是一次提交 或者实际上是两次甚至有时是三次提交 并且您无法更改提交 那么

随机推荐

  • 我可以为 html 元素设置默认的 css 类吗

    如果我定义了一个 css 类 是否可以将该类设置为 html 元素的默认类 为了澄清这一点 我希望分解出类的定义 以便它可以被一个或多个 css 选择器使用 或者在 html 中谨慎应用 例如 myclass float right h1
  • Actionscript 3.0:范围

    教程通常不涉及 Actionscript 中的范围 您能给我指出一些文档和 或解释一下我应该了解什么吗 我想避免由于某些类在某些地方不可见而引起的问题 这些应该有帮助 功能范围 http livedocs adobe com flex 3
  • 调整应用程序窗口大小时,如何调整应用程序内的图像大小?

    当我最大化应用程序时 JPanel 内的图像不会随之调整大小 如何在窗口最大化时调整 JPanel 及其内容 编辑 我正在使用 BufferedImage 这是一个开放式问题 您想要缩放以填充或缩放以适合区域还是您不关心纵横比 填充比例和适
  • South 忽略 Python / Django 中字段默认值的更改

    为什么 South 无法识别 Python 模型中默认字段值的更改 例如 以向南迁移的现有模型为例 class MyFamily models Model family size models IntegerField verbose na
  • Phonegap 谷歌分析根本不跟踪

    这是我的 main js 文件 Google Analytics function var ga document createElement script ga type text javascript ga async true ga
  • 在运行时更改 DataGridView 标题文本

    我能够在运行时更改所有控件文本 预计我的 DataGridViews 标题文本不会更改 colName HeaderText FormOtherRes Crc I tried DataGridView1 Refresh 但这没有用 当我调试
  • 不在数据构造函数范围内

    我有两个 hs 文件 一个包含新类型声明 另一个使用它 首先 hs module first where type S SetType data SetType S Integer 第二个 hs module second where im
  • 维基百科是否允许通过 Google App Engine 获取 URL?

    我正在编写一个 Python Web 应用程序 我计划在其中利用维基百科 当尝试一些 URL 获取代码时 我能够获取 Google 和 Facebook 通过 Google App Engine 服务 但是当我尝试获取 wikipedia
  • 从 XML 中选择节点,其属性之一包含特定字符串

    我试图选择在其属性之一中包含给定字符串的节点 但似乎我只能在某个属性上执行此操作 var tempUsers xmlDocument selectNodes Users contains Id TEXT 我想我可以写一些其他的东西来代替 I
  • java web start 应用程序可以在没有 .jnlp 文件的情况下存在吗? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 正如中所解释的Java网络启动 ht
  • jQuery 模糊() 不起作用?

    这里完全被难住了 尝试一些很简单的事情 但它不起作用 input input1 textarea input1 focus function this addClass input2 removeClass input1 input inp
  • canvasContext.fillRect 在 Firefox 中抛出 NS_ERROR_FAILURE 异常

    我试图在页面顶部绘制一个巨大的画布矩形 某种灯箱背景 代码非常简单 var el document createElement canvas el style position absolute el style top 0 el styl
  • Future.get() 总是被 InterruptedException 中断

    我在 Java 中的 Future get 遇到了一个奇怪的问题 它总是返回一个 InterruptedException 但奇怪的是异常的原因是 null 所以我不知道是谁打断了我 情况变得更糟 因为我在调用 get 之前进行检查 而 F
  • 如何从 Spring MVC 控制器返回对象以响应 AJAX 请求?

    我必须从控制器返回员工列表以响应 jQuery AJAX 请求 我该怎么办呢 我的控制器 RequestMapping phcheck public ModelAndView pay RequestParam empid int empid
  • Linq:在进行投影时设置属性

    我正在做一个简单的 GroupBy 获取第一个元素 但我想修改每个结果的一个属性 class M public string Name get set public int NOfPeopleWithTheSameName get set
  • React 中的 JQuery 移动组件

    React 中的 JQuery 移动组件 我对这个概念还很陌生 仍然需要弄清楚 我构建了一个用于移动目的的应用程序 并决定将其包装在 React 组件中 我的代码 索引 html
  • 加密部署 .NET 的配置文件

    我有一个从 app config 读取的 Windows 服务 我希望对某些设置进行加密 但是 我不想使用 NET 中提供的 ProtectedConfigurationProvider 类 因为它们使用 DPAPI 根据运行的计算机来加密
  • Cython 中 numpy 数组掩码的性能

    作为这个问题的后续here https stackoverflow com questions 45882166 performance of updating multiple key value pairs in a dict 感谢 M
  • Git 更改基础分支

    我有一个名为 develop 的分支 并基于该分支我创建了另一个分支 TestFeature 然后我基于 TestFeature 制作了其他分支 NewFeature 并进行了一些更改并提交 问题是我不希望文本功能中的更改出现在我的新功能分
  • 当双方都被删除时,为什么 git 给我一个“删除合并冲突”?

    我正在合并更新版本master进入我的分支 在 master 中 一个文件已被删除 我也删除了 Git 给了我以下内容 Deleted merge conflict for Lib SharedBL WebServices WebAPI A