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