通常在提交过程中($ git -commit -m ""),我希望阅读我的最后一条注释,以记住我已经取得了什么进展。是否有一种简单的方法可以通过命令行直接访问最后的提交消息?(我用的是Windows。)


Git log -1将显示最新的提交消息,如果你只想显示sha1和相关的提交消息,Git log -1——oneline。


git show

是最快的类型,但显示你的差异以及。

git log -1

又快又简单。

git log -1 --pretty=%B

如果您只需要提交消息而不需要其他信息。


一般来说:

git log -n

会显示最后n个提交消息吗

如果你想快速了解你的提交,那就更优雅了

git log --oneline -n

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

您可以使用更短的命令将其保存为git别名或shell别名。例如,我将它作为glog放在我的shell中,我可以使用glog -10查看我最近的10条提交消息。


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


我做了这个

git reflog -1 | sed 's/^.*: //'

为了更好读,运行一次这个命令:

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

在这里找到解决方案


从git log -1开始——pretty='%s'

但下面这个涵盖了所有的情况,

git log——pretty='format:%Creset%s'——no- merged -1

没有多余的空白 放弃合并提交 没有提交id,日期,只显示消息。

自己粘贴看看


你可以使用

git show -s --format=%s

这里——格式支持各种打印选项,请参阅这里的文档。具体来说,%s表示“主体”。此外,-s代表——no-patch,它抑制了diff内容。

我经常用

git show -s --format='%h %s'

%h表示提交的短散列

另一种方法是

git show-branch --no-name HEAD

它似乎比另一条路跑得快。

实际上,我写了一个小工具来查看所有回购的状态,包括编辑状态、与远程分支的关系等。它还从任何工作目录批量执行命令。

你可以在github上找到它。


我刚刚通过检索前面的命令找到了shell的一个变通方法。

按Ctrl-R调出反向搜索命令:

reverse-i-search

然后开始输入git commit -m,这将添加这作为搜索命令,这将带来之前的git提交及其消息:

reverse-i-search`git commit -m`: git commit -m "message"

进入。就是这样!

(在Ubuntu shell中测试)


如果你只想看到提交消息的主题(第一行):

git log -1 --format=%s

这在之前的任何答案中都没有记录。另外,通过no的方法也显示了这一点。

参考:

git log - emsem


这个命令将得到最后一个提交消息:

git log -1 --oneline --format=%s | sed 's/^.*: //'

输出类似于:

Create FUNDING.yml

您可以将-1更改为任何负数,以增加检索到的提交消息的范围