如何在 `git commit` 期间在编辑器中显示 `git log`?

How to show `git log` in the editor during `git commit`?

我反复发现自己在 git commit 之前调用 git log 以查看在进行新提交之前的最后一次提交是什么。

有没有办法用 git log 的输出自动填充编辑器中 git commit 消息的注释掉的部分?也许甚至有像 -n5 这样的选项?现在,它显示了分支和暂存文件。

git: Show index diff in commit message as comment 问题非常相似,但 --verbose 不显示日志。

如果相关,我会使用 vim 作为我的编辑器。

可以使用 --edit--file 选项自定义提交消息。连字符可以与 --file 选项一起使用,以从标准输入读取额外的提交消息文本。 vim 这对我来说效果不佳;可能是因为它没有被调用为 vim -.

Bash 进程替换似乎有效:

git commit --edit --file=<(git log -n5 | sed 's/^/# /')