【问题标题】:Standalone merging / 3-way equivalent of git diff --no-index独立合并/ git diff --no-index 的 3 路等效项
【发布时间】:2021-02-08 20:08:34
【问题描述】:

我们可以使用 git 的 diff 工具,而无需 git repos 和 git diff --no-index <FILE-A> <FILE-B>

在给定三个输入文件(“ours”、base 和“theirs”)的情况下,是否有类似的命令用于运行 git 的合并算法?并且具体应该输出“diff3”风格(看到冲突中的“base”是必不可少的)

我知道它不如 git 的递归合并策略那么聪明,但我会非常满意一些基本的东西,比如“解决”策略。

【问题讨论】:

  • @phd 我没有找到在我的 macOS 设置上安装它的快速方法,但阅读文档似乎它不是 git 的 diff3 样式(实际上我没有明确要求我的问题 - 我会纠正它)

标签: git command-line diff three-way-merge


【解决方案1】:
git merge-file -p --diff3 ours base theirs

【讨论】:

  • 谢谢!我已经接受并编辑了答案以添加-p 参数以在标准输出上输出结果(否则不清楚它的去向)
  • @yairchu:没有-pgit merge-file 将结果写回第一个命名文件(此处为ours)。
猜你喜欢
  • 2018-01-05
  • 2015-06-28
  • 1970-01-01
  • 1970-01-01
  • 2018-09-18
  • 2011-10-06
  • 2020-02-15
  • 1970-01-01
  • 2021-09-08
相关资源
最近更新 更多