【问题标题】:Git rebase interactive drop vs deleting the commit lineGit rebase 交互式删除与删除提交行
【发布时间】:2016-03-07 14:23:57
【问题描述】:

与 Git 交互式 rebase 中的 drop 和仅删除提交的行有什么区别?

【问题讨论】:

    标签: git git-rebase


    【解决方案1】:

    默认没有区别;这只是说同一件事的另一种方式。

    但是,如果您将rebase.missingCommitsCheck 设置为warnerror,则删除一行将触发警告(用于检测混乱的剪切和粘贴)。

    然后将该行设置为 drop 明确告诉 Git 你想放弃该提交,并且不会显示任何警告。

    【讨论】:

      【解决方案2】:

      还有其实还有一个小区别:

      您可以显式“删除”所有提交。效果与重置相同。

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

      在这种情况下,通常你不会使用 rebase。只有当我尝试向使用虚拟提交的同事解释使用 rebase 删除提交时,我才知道其中的区别。

      【讨论】:

        【解决方案3】:

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

        提交将被删除/忽略。

        查看何时向下滚动:

        如果您在此处删除一行,COMMIT 将会丢失。

        2.6.0-rc1中添加了drop命令:

        “git rebase -i”学习了“drop commit-object-name subject”命令 作为跳过重播提交的另一种方式。

        【讨论】:

          猜你喜欢
          • 2023-02-08
          • 1970-01-01
          • 2016-11-22
          • 2018-03-22
          • 1970-01-01
          • 1970-01-01
          • 2022-07-03
          • 2022-01-10
          • 2011-12-19
          相关资源
          最近更新 更多