如何删除git旧提交并只保留最新提交



我需要删除所有旧的提交,只推送最近的提交。所以我试图删除旧的提交g7688bc3…并将0455a4f67这个最新的提交只保留在我的分支上。我已经尝试过硬重置,但仍然存在一个旧的提交,并且rebase编辑器没有显示任何要删除的提交。有什么建议吗?。

commit 0455a4f6741942ea3a4526957dbb62c4cc144458f2
Author: adminuser <admin@email.com>
Date:   Thu Apr 1 11:55:39 2021 +0830
Create test branch
commit g7688bc3dhhd1a3642fg76b885b1ac87dc98658b27
Author: rootuser <admin@email.com>
Date:   Mon Nov 15 14:01:22 2020 +0830
Create main branch

绕过它最简单的方法是创建一个孤立分支,然后它将没有历史记录。。。你的承诺将是第一个:

git checkout --orphan new-branch
git commit -m "first commit on new branch"

然后你可以把旧的分支放在这里:

git branch -f old-branch
git checkout old-branch

但你正在失去所有以前的历史,所以要小心使用。

最新更新