当我这样做时,我git rebase --interactive
有六个基本命令:pick
、reword
、edit
、squash
和fixup
。exec
命令有什么作用pick
?是cherry-pick
提交还是确实如此checkout
?
ang*_*son 15
来自帮助文章:
pick
pick
只是意味着包含该提交。当变基正在进行时,重新排列 pick 命令的顺序会更改提交的顺序。如果您选择不包含提交,则应删除整行。
为了完整起见,这里还有其他命令:
reword
该reword
命令与 类似pick
,但使用它后,变基过程将暂停并给您一个更改提交消息的机会。提交所做的任何更改都不会受到影响。 如果您选择提交,您将有机会修改提交,这意味着您可以完全添加或更改提交。您还可以在继续变基之前进行更多提交。这允许您将大型提交拆分为较小的提交,或者删除提交中所做的错误更改。 此命令允许您将两个或多个提交合并为一个提交。一个提交被压缩到它上面的提交中。Git 让您有机会编写描述这两个更改的新提交消息。 这与 类似,但要合并的提交的消息被丢弃。该提交只是合并到其上方的提交中,并且较早的提交的消息用于描述这两个更改。 这允许您针对提交运行任意 shell 命令。
edit
edit
squash
fixup
squash
exec
根据实验, git 的交互式 rebase 中的pick命令的工作方式与gitcherry-pick --ff相同。根据文档,其行为方式如下:
\n\n\n\n\n如果当前 HEAD 与cherry-pick\xe2\x80\x99ed 提交的父级相同,则将执行快进到该提交。
\n
(参见: https: //git-scm.com/docs/git-cherry-pick)
\n