Git【撤销远程提交记录】

avatar
作者
猴君
阅读量:2

    在实际开发中,你是否遇到过错误的提交了代码,想要删掉本次提交记录的情况,你可以按照如下方法实现。

1、使用 git revert

         如果你想要保留历史记录,并且对远程仓库其他使用者的影响最小,你可以使用 git revert 命令。这个命令会创建一个新的提交,这个新提交是对之前提交的逆向操作。例如,要撤销最近的一次提交,你可以执行:

git revert HEAD  git push origin main

        这里 main 是你的目标分支,根据实际情况可能需要替换。

2、使用 git reset(推荐)

        如果你需要从历史记录中完全删除某次提交,可以使用 git reset。注意,这种方法会重写历史,可能会给其他协作者带来问题。如果确定要这么做,可以按照以下步骤操作:

git reset --hard HEAD~1  git push origin main --force

        这里 HEAD~1 将 HEAD 移回到前一次提交,--hard 选项会使工作目录中的文件状态与仓库同步。--force 选项用于强制推送到远程仓库,这会覆盖远程仓库中的历史。

3、使用 git push --force-with-lease:

        如果你需要强制推送,但又想确保不会覆盖其他协作者的工作,可以使用 --force-with-lease 选项。这个选项比 --force 更安全,它会在推送前检查远程分支的状态是否发生了改变。

git reset --hard HEAD~1  git push --force-with-lease origin main

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!