由于 rebase 错误,我有很多重复提交。
如何删除与另一个提交具有相同日期戳的提交?
我想删除重复项而不对其他提交执行任何更改,以保留以前的历史。
我已经尝试用
git rebase
手动完成,通过删除它们,但它没有用。
如果你的意图是“回到原来的样子”,请检查你的reflog:
运行
git reflog <branchname>
(或git reflog
)并在变基之前搜索分支的状态。
您可以检查您在 reflog 中看到的给定提交的历史记录:
git log --oneline --graph <sha>
一旦您发现要返回的提交,请使用
git reset <sha>
将您的分支恢复到该状态。git reset --hard <sha>
-- 注意:git reset --hard
将从您的磁盘中删除未存储在 git 中的修改,因此可以删除此类更改而无需通过任何方式恢复它们混帐。小心使用,在使用之前检查你的git status
,并确保你想要保留的修改已经以某种方式保存(隐藏或提交)。