在进行常规git提交时,git commit --verbose
在编写提交消息时会在文本编辑器中显示diff。
假设我正在进行交互式rebase(git rebase --interactive
)来编辑以前的提交。要“继续”变基,我会运行git rebase --continue
。这将打开一个文本编辑器,用于编辑提交消息,但不会显示差异。在对提交进行更改后,如何在交互式rebase期间(重新)写入提交消息时显示diff?
git rebase --continue --verbose
似乎不是一个有效的命令......
答案 0 :(得分:1)
在rebase中间,
git diff
显示尚未添加到提交的更改
git diff --cached
显示您提交的新更改
git show
显示您正在编辑的提交中的原始更改。
答案 1 :(得分:1)
你可以这样做:
git -c commit.verbose=true rebase --continue
如果你厌倦了复制该命令,你可以创建一个
~/.gitconfig
中的别名:
[alias]
myrebasecontinue = "!git -c commit.verbose=true rebase --continue"
现在就做:
git myrebasecontinue
答案 2 :(得分:1)
显示差异:
git -c commit.verbose=true rebase --continue
要使所有提交变得冗长而不必每次都指定-c commit.verbose=true
,请将其添加到~/.gitconfig
:
[commit]
verbose = true
参考:man git-config
。