1

我在一个交互式 rebase 中,并且在查看提交时已经标记了我需要仔细查看的提交edite),我意识到需要删除/删除一些提交。在交互模式下哪个是正确的提交?

目前我执行以下命令:

$ git reset HEAD^
$ git checkout -- <File> # <- here I list all of the files that need to be reset
$ git rebase --continue # this complains that I have to perform git commit --allow-empty or git reset
# since I don't want the empty commit I do …
$ git reset
$ git rebase --continue

这是非常冗长的。所以我尝试了

$ git reset --hard HEAD^
$ git rebase --continue

但这会产生合并冲突。

那么在交互式变基的编辑模式下,删除当前提交的最简单方法是什么?

4

2 回答 2

1

那么在交互式变基的编辑模式下,删除当前提交的最简单方法是什么?

对我来说,到目前为止,最简单的方法是记下我要删除的提交(主题行和任何其他识别标记),完成交互式 rebase,然后开始一个新的交互式 rebase 并将提交标记为“drop ”。没有必要一次性全部完成!

于 2021-02-24T22:18:01.093 回答
0

如果您git reset --hard也丢失了当前提交的更改,因此我认为会发生冲突。相反,您可以使用

git reset HEAD^

并使用当前提交中的更改修改最后一次提交:

git add your_changes
git commit --amend -m "new commit message"
于 2021-02-24T12:19:03.613 回答