误提交至main分支后,如何将其恢复至与origin/main一致?
本地Git分支恢复方案
直接重置分支(丢弃本地超前提交)
如果确认本地main分支上的超前提交已经在BugCorrection分支保留,可直接将本地main重置到远程分支状态:
- 切换到main分支:
git checkout main - 执行硬重置,同步到origin/main:
git reset --hard origin/main提示:
--hard参数会彻底丢弃本地超前的提交,操作前务必确认这些提交已在其他分支备份。
保留修改再重置(若需复用提交内容)
如果还需要保留那个提交里的修改,可先撤销提交、转移修改到目标分支,再重置main:
- 切换到main分支:
git checkout main - 软撤销最近一次提交,保留工作区修改:
git reset --soft HEAD~1 - 切换到BugCorrection分支,把修改提交过去:
git checkout BugCorrection git add main.py git commit -m "corrected bug" git push origin BugCorrection - 切回main分支,同步到远程状态:
git checkout main git reset --hard origin/main
内容的提问来源于stack exchange,提问作者KansaiRobot
相关产品推荐
相关产品推荐

