2011-09-03 72 views
234

通常在提交期间($ git -commit -m ""),我希望阅读我的最后一条评论,以记住我所取得的进展。有没有一种简单的方法通过命令行直接访问上次提交消息? (我使用Windows。)如何阅读上次提交评论?

+4

如果它是一个普通的动作,让一个'alias'(例如'wherewasi' ;-)您选择的解决方案/命令行。你也可以包含分支信息。 –

回答

436
git show 

是最快的类型,但也显示了差异。

git log -1 

快速简单。

git log -1 --pretty=%B 

如果你只需要提交消息,而不是其他任何东西。

+0

(在Ubuntu上)如果行不在shell中,该行会被截断。任何想法如何让它打印多行信息? –

+0

也许我应该用多个'-m'而不是一个长整数来提交...... –

+2

%B格式是我不需要缩进的提交消息。是的,@Juh_,尽管git gui不会为你打包,但在提交消息中使用80列文本是一个好主意,而不是每行一行。 –

13

git log -1将显示最新提交信息或git log -1 --oneline如果你只是想在SHA1和相关承诺的消息显示。

+0

mercurial同样呢? –

66

一般:

git log -n 

会告诉你最后n提交信息

更优雅的 - 如果你希望你提交的快速概览

git log --oneline -n 

这将只显示第一最后的n行提交消息。

您可以使用较短的命令将其保存为git别名或shell别名。例如,我的外壳程序为glog,我可以看到最近的10条提交消息,其中包含glog -10

+2

感谢您 - - 我正在寻找那一个 –

+0

好记,好记 – PrimeLens

8

git log -1 branch_name将向您显示指定分支的最后一条消息(即不一定是您当前所在的分支)。

-1

我这样做

混帐引用日志-1 | SED的/^.*://“

6

对于东西多一点可读性,一旦运行此命令:

git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative" 

,这样当你再运行:

git lg 

你会得到一个很好的读数。只显示最后一行:

git lg -1 

发现的解决方案here