交互式 rebase 和普通 rebase 有什么区别?

Far*_*ani 6 git git-rebase

交互式 rebase 之间有什么不同,例如:

git rebase -i HEAD~3
Run Code Online (Sandbox Code Playgroud)

并在没有-i

git rebase HEAD~3
Run Code Online (Sandbox Code Playgroud)

Mat*_*att 10

正如 Thomas Edwards 评论的那样,这些文档在这里很有帮助。正如pro git 书一样(特别是关于变基重写历史的部分)。

其核心是,变基将检查根提交并逐一应用一系列提交。

当您执行常规变基 ( git rebase HEAD~3) 时,这会自动发生。

然而,当您执行交互式变基 ( git rebase -i HEAD~3) 时,您有机会编辑提交。

这看起来像是修改提交消息、将提交压缩在一起、编辑提交中的更改,甚至完全删除提交!