61

从 emacs 中,我如何查看最后更改该行的提交的详细信息(例如提交消息)?

我已经安装了 magit。

4

2 回答 2

97

对于这个特定的操作,没有必要使用 magit - vanilla emacs 可以做到。

(另外,因为它使用 vc,所以它在 vc 支持的任何版本控制系统中都应该同样工作。)

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

现在,重点应该是您感兴趣的提交 id。(如果没有,您可能需要使用C-x 1和/或v以便您可以看到哪一行是哪一行,以便导航到正确的那一行。)您可能现在能够看到该文件的差异=- 如果您收到以“无法与之前的任何修订版本进行比较...”开头的错误,这可能意味着该修订版本创建了该文件(这可能是 emacs 中的一个错误)。

作者和日期已经在生成的Annotate缓冲区中可见vc-annotate

要查看提交消息,请在注释缓冲区中按l(字母,而不是数字 1) 。要查看该文件在该修订版中的样子,请按下Annotate缓冲区或vc-change-log缓冲区。f

于 2013-03-17T12:08:53.863 回答
46

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

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

于 2013-03-17T14:37:18.317 回答