简体中文 ▾
主题 ▾
最新版本 ▾ git-merge-index 最后更新于 2.35.0
git-merge-index 手册的变更
设置和配置
获取和创建项目
基本快照
分支与合并
共享和更新项目
检查和比较
打补丁
调试
电子邮件
外部系统
服务器管理
指南
管理
底层命令
- 2.35.1 → 2.50.1 无更改
-
2.35.0
2022-01-24
- 2.24.1 → 2.34.8 无变更
-
2.24.0
2019-11-04
- 2.1.4 → 2.23.4 无变更
-
2.0.5
2014-12-17
描述
此命令会在索引中查找 <file>(s),如果存在任何合并条目,则将这些文件的 SHA-1 哈希值作为参数 1、2、3 (如果文件不存在则为空参数) 传递,并将 <file> 作为参数 4 传递。这三个文件的文件模式作为参数 5、6 和 7 传递。
选项
如果 git merge-index 被调用时带有多个 <file>s (或 -a),它会依次处理它们,仅当合并返回非零退出代码时才停止。
通常,这会通过一个脚本运行,该脚本调用 Git 对 RCS 包中 merge 命令的模拟。
发行版中包含一个名为 git merge-one-file 的示例脚本。
警告!警告!警告!Git 的“合并对象顺序”与 RCS merge 程序的合并对象顺序不同。在上述排序中,原始文件位于第一位。但三方合并程序 merge 的参数顺序是让原始文件位于中间。别问我为什么。
示例
torvalds@ppc970:~/merge-test> git merge-index cat MM This is MM from the original tree. # original This is modified MM in the branch A. # merge1 This is modified MM in the branch B. # merge2 This is modified MM in the branch B. # current contents
或
torvalds@ppc970:~/merge-test> git merge-index cat AA MM cat: : No such file or directory This is added AA in the branch A. This is added AA in the branch B. This is added AA in the branch B. fatal: merge program failed
其中后一个示例展示了 git merge-index 一旦有任何操作返回错误就会停止尝试合并(即,cat
对 AA 文件返回了错误,因为它在原始文件中不存在,因此 git merge-index 甚至没有尝试合并 MM 文件)。