Git rebase交互式操作中的“drop”与删除提交行有何区别?

86

在 Git 交互式变基中,drop 和仅删除提交行有何不同?

3个回答

76

默认情况下没有区别;它只是另一种说同样事情的方式。

但是,如果你将rebase.missingCommitsCheck设置为warnerror,那么删除一行将会触发警告(有助于检测混乱的剪切和粘贴)。

然后明确将该行设置为drop,告诉Git你想要删除该提交,并且没有显示任何警告。


49

实际上还有一个小的不同之处:

您可以明确地“丢弃”所有提交。效果与重置相同。

但是,如果您只删除所有行,则git会告诉您“无事可做”。

通常在这种情况下您不会使用rebase。我学到这个差异只是因为我试图使用虚拟提交向同事解释如何使用rebase删除提交。


13

将提交标记为drop与删除该行相同。

该提交将被丢弃/忽略。

当您向下滚动时,查看:

如果您在此处删除一行,则该提交将丢失。

2.6.0-rc1开始添加了drop命令

"git rebase -i" 学习到 "drop commit-object-name subject" 命令 作为跳过回放提交的另一种方式。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接