git责备emacs中的提交详细信息

时间:2013-03-17 12:08:54

标签: git emacs magit

从emacs,我怎样才能看到上次更改该行的提交的详细信息(例如提交消息)?

我安装了magit。

2 个答案:

答案 0 :(得分:79)

没有必要使用magit进行此特定操作 - vanilla emacs可以执行此操作。

(另外,因为这使用了vc,所以在vc支持的任何版本控制系统中都应该完全相同。)

首先,使用vc-annotate命令,该命令绑定到键序列 C-x v g

现在,重点应该是您感兴趣的提交ID。(如果没有,您可能需要使用 Cx 1 和/或 v 以便您可以看到哪一行是哪一行,以便导航到正确的一行。)您现在可以使用 = 查看该文件的差异 - 如果您获得以“不能从之前的任何修订版本中扩散...”开头的错误,这可能意味着此版本创建了该文件(这可能是emacs中的错误)。

vc-annotate生成的 Annotate 缓冲区中已显示作者和日期。

要查看提交消息,请在 Annotate 缓冲区中按 l (字母,而不是数字1)。要查看该版本的文件内容,请在 Annotate 缓冲区或 vc-change-log 缓冲区中按 f

答案 1 :(得分:42)

我建议使用magit-blame-mode M-x magit-blame-mode )。与vc-annotate相比,它以更好的方式提供信息,并且是标准magit分布的一部分。您可能希望将其绑定到某些键盘组合以快速切换它。

magit-blame-mode中使用 p n 在上一个和下一个更改之间导航,并使用 RET 查看差异特定的提交。