我正在查看 git show --numstat --shortstat --raw --pretty=medium -p
的输出命令并查看 merge 提交的输出不同。这就是我得到的:
commit cec68e2b00d86357c18b576cbaed52cc1ea42a74
Merge: b2ea79c e4900df
Author: jeresig <jeresig@gmail.com>
Date: Thu Dec 9 12:44:30 2010 -0500
Merge branch 'bug5566' of https://github.com/csnover/jquery into csnover-bug5566
16 16 src/manipulation.js
76 56 test/unit/manipulation.js
::100644 100644 100644 e09dd7e... c592b7a... 8d951b6... MM src/manipulation.js
::100644 100644 100644 4805016... 8ee3688... 23ed898... MM test/unit/manipulation.js
为什么没有差异信息,什么是
MM
代表?我以前没见过这个修改器。
最佳答案
没有差异信息,因为 --raw
抑制该输出。 (诚然,这在文档中并不明显。)
“原始”输出记录在 git diff-tree
中。手册页,在 Raw Output Format 部分和 diff Format for Merges .有两个M
s 在您的示例中,因为它是与两个 parent 的 merge 提交。要更详细地查看此示例:
::100644 100644 100644 e09dd7e... c592b7a... 8d951b6... MM src/manipulation.js
...三种文件模式(
100644 100644 100644
)为您提供第一个父级、第二个父级和此提交中的文件模式。同样,接下来的三个字段 ( e09dd7e... c592b7a... 8d951b6..
) 为您提供 object names代表该文件在第一个父级、第二个父级和 merge 提交中的内容的 blob。 MM
然后是两个“分数”字段,告诉您此文件已针对父级 1 进行了修改,并且还针对父级 2 进行了修改。
关于git - merge 提交的 git show --raw 输出中的 MM 代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5451073/