我总是使用git commit --verbose。是否有一个等效的选项/设置可以让git在我在git rebase --interactive期间重写提交消息时显示差异?
git commit --verbose
git rebase --interactive
brccelvz1#
根据您在注解中的回答,执行git diff HEAD^对您没有帮助,除非您只想改写最后一次提交。但是在这种情况下,变基是一个错误的工具,相反,你可以简单地做git commit --amend --verbose而不改变索引,然后编辑提交消息,得到你想要的diff视图。如果你想改写一个旧的或多个提交消息的diff视图,只需要使用edit节而不是reword节,然后使用git commit --amend --verbose,而不需要在每个提交的索引中修改代码。reword应该只是一个使用edit的快捷方式,然后不做任何更改就执行git commit --amend -m "new message",这只会更改提交消息。您也可以定义git commit --amend --verbose或git commit --verbose作为别名,这样您就可以保存一些输入,并且可以简单地执行git cav或git c --amend。
git diff HEAD^
git commit --amend --verbose
edit
reword
git commit --amend -m "new message"
git cav
git c --amend
ssm49v7z2#
要显示差异,请执行以下操作:
git -c commit.verbose=true rebase --interactive
要使所有提交都变得冗长,而不必每次都指定-c commit.verbose=true,请将以下内容添加到~/.gitconfig:
-c commit.verbose=true
~/.gitconfig
[commit] verbose = true
参考:man git-config。
man git-config
2条答案
按热度按时间brccelvz1#
根据您在注解中的回答,执行
git diff HEAD^
对您没有帮助,除非您只想改写最后一次提交。但是在这种情况下,变基是一个错误的工具,相反,你可以简单地做
git commit --amend --verbose
而不改变索引,然后编辑提交消息,得到你想要的diff视图。如果你想改写一个旧的或多个提交消息的diff视图,只需要使用
edit
节而不是reword
节,然后使用git commit --amend --verbose
,而不需要在每个提交的索引中修改代码。reword
应该只是一个使用edit
的快捷方式,然后不做任何更改就执行git commit --amend -m "new message"
,这只会更改提交消息。您也可以定义
git commit --amend --verbose
或git commit --verbose
作为别名,这样您就可以保存一些输入,并且可以简单地执行git cav
或git c --amend
。ssm49v7z2#
要显示差异,请执行以下操作:
要使所有提交都变得冗长,而不必每次都指定
-c commit.verbose=true
,请将以下内容添加到~/.gitconfig
:参考:
man git-config
。