2011-03-27 77 views
2

我正在查看git show --numstat --shortstat --raw --pretty=medium -p命令的輸出,看到合併提交輸出不同。這就是我得到:MM在git show中代表什麼 - 爲輸出提交合並提交?

commit cec68e2b00d86357c18b576cbaed52cc1ea42a74 
Merge: b2ea79c e4900df 
Author: jeresig <[email protected]> 
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立場?我之前沒有看到這個修飾符。

回答

3

沒有差異信息,因爲--raw會抑制輸出。 (誠​​然,這是從文檔不明顯。)

「原始」輸出在git diff-tree手冊頁中記載,在部分Raw Output Formatdiff Format for Merges。在你的例子中有兩個M,因爲它是一個有兩個父母的合併提交。要看看下面這個例子的詳細信息:

::100644 100644 100644 e09dd7e... c592b7a... 8d951b6... MM src/manipulation.js 

...三個文件模式(100644 100644 100644)給你的第一個父文件模式,並且第二親和這個承諾。同樣,接下來的三個字段(e09dd7e... c592b7a... 8d951b6..)爲您提供blob的object names,它代表該文件在第一個父,第二個父和合並提交中的內容。 MM然後是兩個「分數」字段,告訴你,此文件已修改相對於父項1,並且相對於父項2也進行了修改。

+0

謝謝!在diff-tree頁面沒有注意到該部分 – 2011-03-28 18:39:35