在rebase -i期间重写提交消息时如何制作git show diff?

时间:2013-05-23 18:20:22

标签: git rebase

我总是使用git commit --verbose。有没有一个等价的选项/设置,当我在git rebase --interactive期间重写提交消息时,git会告诉我差异?

2 个答案:

答案 0 :(得分:11)

根据您在评论中的回答,执行git diff HEAD^对您没有帮助,除非您只想重写最后一次提交。

但在这种情况下,无论如何,rebase是错误的工具。相反,您只需在不更改索引的情况下执行git commit --amend --verbose,然后编辑提交消息,具有您要求的差异视图。

如果要使用diff视图重新编写旧的或多个提交消息,只需使用edit节而不是reword节,然后使用git commit --amend --verbose而无需更改代码每个提交的索引。

reword应该只是使用edit的快捷方式,然后执行git commit --amend -m "new message"而不进行任何只会更改提交消息的更改。

您还可以将git commit --amend --verbosegit commit --verbose定义为别名,这样您就可以节省一些输入内容。 G。只需git cavgit c --amend

答案 1 :(得分:1)

显示差异:

git -c commit.verbose=true rebase --interactive

要使所有提交都变得冗长而不必每次指定-c commit.verbose=true,请将其添加到~/.gitconfig

[commit]
    verbose = true

参考:man git-config