为什么 git rebase 的合并冲突通常比合并少?

2023-12-25

我经常听到有人说,与 git merge 相比,使用 git rebase 可以减少合并冲突的数量,但我从未找到解释为什么会出现这种情况。

当两个人都修改同一行代码时,简单地在另一组更改之上重放一组更改并不能神奇地消除固有冲突,那么是什么让 rebase 更好呢?

谁能提供一个简单的例子,其中合并会产生冲突,但变基不会?

更新:经过 3 年的 git 经验,我开始相信我最初的前提是错误的:在 rebase 和 merge 中冲突同样可能发生。然而,Rebase 确实使历史更容易理解,并在需要时进行挑选或倒带。


您解决了本应引入冲突的提交中的冲突,因此实际上您没有任何冲突。

如果我在功能分支中编辑一行,该行后来在主分支中发生了更改,并进行简单的合并,则会发生冲突。

如果我变基,它将在我进行此更改的提交处停止,并在那时我处理冲突。

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

为什么 git rebase 的合并冲突通常比合并少? 的相关文章

  • Windows 版 GitKraken 中的文件名太长

    正如建议的Q22575737 https stackoverflow com a 22575737 6623589 我已经更新了我的注册表并设置了git config system core longpaths true在处理长路径时 问题
  • 使用 TFS 个人访问令牌克隆 Git 存储库

    我正在尝试以编程方式克隆 git 存储库 我的 ASP NET MVC 应用程序正在创建并启动一个进程 处理进程的代码工作正常 但是当尝试使用本地 TFS PAT 克隆 git 存储库时 身份验证失败 我无法使用 NTLM 或要求用户输入凭
  • Git 无效的修订范围 Symfony2 Composer 外部包

    RuntimeException Failed to execute git log 18efcf67d236d5bbf46ac67820250dffd0474b6e 94e2146f525fa1367e15646fa273e5b34f92
  • DVCS命令的统一

    当处理多个 开源 项目时 多个版本控制系统开始出现问题 虽然它们共享共同的操作 但我经常在输入时犯错误hg add反而git add 我记得前段时间看到过一个项目 通过提供基本命令以统一的方式访问不同的源代码控制软件提交 ci add等在外
  • git 预提交钩子格式代码 - Intellij/Android Studio

    本要点展示了如何在预提交时使用 Eclipse 格式化程序自动格式化 Java 代码 Source https gist github com ktoso 708972 https gist github com ktoso 708972
  • Git:如何变基到特定提交?

    我想变基到特定的提交 而不是另一个分支的 HEAD A B C master D topic to A B C master D topic 代替 A B C master D topic 我怎样才能做到这一点 您可以通过在您喜欢的提交上创
  • 无法使用 git 配置文件进行 ssh

    我知道它被问了很多次 但我无法得到我的问题的答案 我正在尝试使用配置文件 ssh 到系统 配置文件是 Host qa HostName 10 218 70 345 User user IdentityFile C Users bean ss
  • 如何解决 VSTS 中拉取请求中的合并冲突?

    我已经创建了拉取请求 我进入了这个 批准 按钮不执行任何操作 并且 完成 被禁用 如何解决拉取请求中的冲突 Update 微软刚刚添加了基于浏览器的合并 这可能会让你摆脱小冲突的困境 并提供自 Sprint 150 起改进了不同场景的可视化
  • git diff - 只显示哪些目录发生了变化

    有没有办法只列出已更改的目录 如果我在 git root 的话 project 我更改的文件是 project subtool file1 project subtool file2 project subtool3 file1 我只是想
  • 如何 git grep 仅一组文件扩展名

    如何执行 git grep 并将检查的文件限制为一组文件 我希望能够 grep cpp 和 h 文件的内容来查找 MyFunc 例如 git grep MyFunc hc 但是 这也匹配 c 文件和 cs 文件 Use git grep M
  • 有没有办法让 git flow 显示它在幕后执行的命令?

    有什么方法可以让 git flow 提前告诉我当我执行 flow 命令时它将执行的确切 git 命令吗 或者告诉我它是东吗 我只能看到输出和摘要吗 你可以使用Git的GIT TRACE 环境变量 http git scm com docs
  • git 显示已添加到 gitignore 的文件中的更改?

    我已经将 log2 文件夹和 main js 文件添加到 gitignore 如屏幕截图所示 但即使执行后git rm cached r我仍然可以看到 git 正在检测 main js 和 log2 文件夹内文件的更改 怎么会 这些的常见问
  • Git:发送电子邮件而不提交

    我有一个项目 我做了更改 并想使用 git send email 功能将它们发送给另一个用户 我发现它可以通过发送补丁来工作 由git format patch每次提交 是否可以只发送diff的 我不想先提交 然后发送补丁 是否有gitfo
  • .gitconfig 别名函数调用

    我在 gitconfig 中定义了以下别名 alias teamcity tc tc是我在我的中定义的一个shell函数 bashrc文件 由于某种原因 我收到以下错误 aafghani 03 git workday amirafghani
  • git 别名中的 AWK 语句

    我正在尝试创建一个 git 别名来以特定格式打印日志中的所有拉取请求 但是 我在使用 AWK 删除双空格时遇到问题 这是使用以下命令的 git log 的输出 git log merges grep pull request pretty
  • Ansible bitbucket 克隆存储库配置 ssh 错误

    我之前发布过这个问题 但那里的答案不再有效 总之 当使用 Ansible 配置我的 vagrant box 时 在尝试使用 ssh 克隆我的 bitbucket 私有存储库时 我遇到了一个神秘的错误 该错误指出 权限被拒绝 公钥 然而 如果
  • VS 2015 + Bower:在防火墙后面不起作用

    Problem 在 Visual Studio 2015 中 使用 Bower 我的包在防火墙后面时恢复失败 并出现类似以下内容的错误 ECMDERR 无法执行 git ls remote tags heads git github com
  • 如何使用 R 将每个文件的数据添加为附加行,从而将不同的 .csv 文件合并为一个完整的文件?

    我有几个不同的文件夹 它们都包含一个 csv 文件 所有这些 csv 文件都有一个单独的列 其中包含实验的一种条件的数据 我想以将每个文件的数据添加为新列的方式合并这些 csv 文件 目前 它看起来像这样 C1 csv 102 106 15
  • `git Reset HEAD file` 是否也检查该文件?

    我错误地向 git 添加了一个目录 当我按照提示操作时here https stackoverflow com questions 348170 undo git add通过执行以下操作来撤消添加git reset HEAD
  • 如何使用 AWS Lambda 安装 Git?

    我在代码提交存储库中有代码 我正在编写一个 lambda 函数来为代码提交存储库的每个签入 事件 构建代码 我无法安装 git 因此无法克隆存储库 我该怎么办呢 正如其他人提到的 在 lambda 上安装 git 要么非常困难 要么完全不可

随机推荐

  • 有没有办法在 YAML 中别名/锚定数组?

    我在用着Jammit http documentcloud github com jammit 为 Rails 应用程序打包资产 我有一些资产文件 我希望将它们包含在几个组中的每个组中 例如 我想要Sammy http github com
  • Python argparse 的选项?

    我正在用 Python 编写一个脚本 并使用 argparse 来解析我的参数 该脚本应该比较可用对准器池中的两个不同的 对准器 并且每个对准器都有一些配置选项 我希望能够使用以下方式调用我的脚本 script py aligner ali
  • 从命令行将列表传递给 Python

    我想让我的 python 脚本在提供一些参数时从命令行运行 然而 参数之一应该是特定于脚本的一个片段的选项列表 字符串解析是否是通过在 命令行列表 字符串从逗号分割后实际构建列表来实现此目的的唯一方法 如果是这样 你会怎么做 示例 deta
  • jquery mobile动态更改按钮问题的文本

    我正在尝试动态更改按钮的文本 但是按钮的 UI 会变得混乱 知道为什么吗 http jsfiddle net L6xRZ http jsfiddle net L6xRZ jQuery Mobile 介入并更改您的 HTML 以使一切按预期工
  • 使用 ctypes 从 Windows 中的剪贴板读取文本

    我试图通过使用来获取存储在剪贴板中的文本ctypes in Python 3 6 我测试了很多在 Stack 和 GitHub 上找到的解决方案 但它们只适用于Python 2 to Python 3 4 这是您几乎随处可见的代码 from
  • Tiny_tds:连接:在配置文件中找不到服务器名称

    require rubygems require tiny tds client TinyTds Client new username gt sa password gt host gt RICHARD PC SQLEXPRESS res
  • 如何访问 sapUI5 聚合绑定中的迭代索引?

    在 sapUI5 中我有一个 JSONModel 包含 element1 columnName col1 values name value 1 1 selected true name value 1 2 selected true na
  • 将 Mongoose 对象保存到两个集合中

    目前我有一个节点应用程序 它使用 mongoose 将对象保存到 MongoDB 中 我正在使用与此类似的模型 var mongoose require mongoose Schema mongoose Schema var Registr
  • IOS 双击单元格导致 UITableView 中的项目不会滚动

    我有一个UITableView其中包含UITextField在每个细胞中当我点击UITextField在单元格中 键盘将显示并覆盖我的单元格 因此 我通过使用将单元格移动到顶部 void keyboardWasShown NSNotific
  • 导出 cytoscape.js 中选定的节点和边

    有没有一种方法可以从图形中导出选定的节点和边并在另一个图形中显示选定的节点和边 maxkfranz说我们可以导出为json 你知道我该怎么做吗 谢谢 您是否尝试过以下内容 cy selected json 编辑 API 现在还允许使用多个元
  • Typescript“无法编译”错误作为警告

    我创建了一个应用程序npx create react app my app typescript我想配置它 以便我的应用程序仍然可以编译 尽管打字稿错误 以便我可以在准备好时返回它们 我没有看到任何compilerOptions为了这 是否
  • 日光浴室用户弃用警告

    自从我在项目中使用 Solarium 以来 我收到了此警告 你知道我该如何解决吗 User Deprecated Not passing an instance of AdapterInterface as the first constr
  • Android 使用 setNumStars 在执行过程中更改星星使收视率变得奇怪

    我正在使用 rb setNumStars int 将星星从给定的默认值 例如 5 更改为具有应用程序首选项的新值 例如 4 代码执行正常 刷新片段后 我可以看到星星数量更改为我设置的任何整数 条形图的 StepSize 为 1 问题是 当我
  • 是否可以从移动设备获取唯一的识别码?

    我目前正在开发移动设备 Web 应用程序 我想知道每个设备是否有某种可以通过浏览器检测到的唯一 ID 号 目的是存储这个号码 以便识别已经访问过该网站的人 我经常使用蓝牙 当您检测到设备时 您可以存储某种 MAC 地址 我将其用作 ID 号
  • 仅对象属性更改时如何触发重组 Jetpack-Android

    想象一下下面的物体 data class CourseState val key Int 0 val name String val courses Courses Courses 实现以下模式 private val courseStat
  • 是否可以从 Sonatype Nexus Repository Manager 3.x 中的本地文件夹部署工件

    I use Sonatype Nexus 存储库管理器 3 5 2并想添加文物 to Nexus Blob 商店从本地文件夹 联系所在的位置 我在 Nexus 文档中找不到解决方案 并尝试在网络中找到 不成功 是否可能以及如何做到这一点 也
  • 在 PowerShell 中获取伟大的祖父文件夹路径(向上三级)?

    有没有一种优雅的方法可以从文件夹路径获取 曾祖父母文件夹 三层 我只是想得到C folderA folderB从完整的路径来看 但这两种解决方案对我来说都显得丑陋 path C folderA folderB folderC FolderD
  • Android Studio Bumblebee 频繁崩溃

    我想知道是否有其他人遇到过这个问题并找到了解决方法 Android Studio Bumblebee 随机且频繁地崩溃 没有模式 当我做某事 例如 编辑代码 或有时什么都不做时 它会崩溃 当我启动 AS 或使用它一段时间后 它可能会崩溃 它
  • 检查多维输入数组中的值

    我将值存储在多维隐藏输入数组中 如下所示
  • 为什么 git rebase 的合并冲突通常比合并少?

    我经常听到有人说 与 git merge 相比 使用 git rebase 可以减少合并冲突的数量 但我从未找到解释为什么会出现这种情况 当两个人都修改同一行代码时 简单地在另一组更改之上重放一组更改并不能神奇地消除固有冲突 那么是什么让