在 Git 中删除本地提交
本文将讨论撤消本地提交的步骤。我们将看到如何在 Git 中删除单个提交到多个提交。
在 Git 中删除本地提交
我们将讨论如何删除本地仓库中的最新提交以启动。
我们通常使用 git reset
命令删除对我们仓库的最新更改。如果要删除最新的提交,请使用以下命令。
git reset --hard HEAD~1
参数 HEAD~1
将删除一个提交。
我们可以使用 N-th
参数,如下所示。
git reset --hard HEAD~N
如果要删除仓库中的最后五个提交,请将 N
替换为你的值。
我们可以使用以下命令删除特定的提交。
git reset --hard <sha1-commit-hash>
在命令中使用你的等同于上面的命令。
如果你想撤消提交历史记录之间的提交所做的更改,请使用 git revert
命令。此命令将撤消所选提交所做的更改。
git revert <sha1-commit-hash>
但是,git revert
不会删除提交。我们在交互式表单中使用 git rebase
。
git rebase -i <sha1-commit-hash>
运行上面的命令后,你将看到一个带有周围提交列表的编辑器。你可以在开头键入 drop
以删除你想要的提交。
如果要将更改推送到远程仓库,请运行以下命令。
git push --force-with-lease origin HEAD
上面的命令不会影响其他开发者在远程仓库中所做的更改。对于 git push origin HEAD --force
命令来说,这是一个更安全的选项,它会覆盖其他开发人员在远程仓库中所做的所有更改。
如果要将本地更改恢复为远程仓库的当前状态,请运行以下命令。
git reset --hard origin/<branch_name>
你可以使用 git reflog
命令找到已删除的提交。
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn