git store在哪里提交摘要和详细信息?

时间:2018-02-21 18:10:21

标签: git

在存储库的mouseover文件夹中,我在哪里可以找到存储我的提交消息文本的文件,包括摘要和详细信息

(“Summary” and “Details” are defined here.)

文件.git存储最新的提交消息,但不显示较旧的提交。

日志文件显示较旧的提交,但它们仅显示摘要文本,而不显示详细信息文本。

我也知道如何在控制台中查看整个提交消息,但我希望能够在文本文件中打开它。

1 个答案:

答案 0 :(得分:2)

提交消息存储为数据库中COMMIT对象的一部分。它们可能是松散的对象(名为.git/objects/<dd>/<rest-of-hash>的文件,其中<dd>是两个十六进制数字,<rest-of-hash>是38个十六进制数字,这样将两者放在一起就形成了对象ID)或者它们可能被打包(在.git/objects/pack下的文件中,可能有多个对象在一个文件中,有时以三角形形式)。

即使是松散的对象也会被压缩,所以即使你递归地grep整个文件系统,你也可能找不到可读形式的提交消息。

我猜你可以使用各种形式的git loggit show并将输出捕获到文件中。或者,如果您知道提交ID,则可以执行类似

的操作
git cat-file -p <id>

但它是相同的信息日志或节目给。