git reset 和 git reflog 解决代码分支提交错误

查看git 提交记录。

比如我要指向前2个commit

使用 git reset --hard HEAD~2 可以将HEAD指向指定的commit,然后 push即可(建议:保留原有分支,在新分支操作)

如果本来要指向是前1个分支,结果指向了前2个commit

使用 git reflog 查看HEAD的历史变动,输出如下内容

bash 复制代码
abc1234 HEAD@{0}: reset: moving to HEAD~2
def5678 HEAD@{1}: commit: Add feature B
ghi9012 HEAD@{2}: commit: Fix bug A
jkl3456 HEAD@{3}: commit: Initial commit

HEAD@{1} 是你 reset 之前的 HEAD(即你真正想保留的最新提交)。

HEAD@{0} 是 reset 之后的状态(即你当前的位置)。

使用 git reset --hard HEAD@{1} 即可恢复到前1个分支。

相关推荐
放学有种别跑、3 小时前
GIT使用指南
大数据·linux·git·elasticsearch
雨雨雨雨雨别下啦3 小时前
【从0开始学前端】 Git版本控制系统
前端·git
happyCoder4 小时前
VS Code Git 神器:内置功能与GitLens插件使用技巧
git·github
小番茄夫斯基5 小时前
深入解析 git merge 和 git rebase 的区别
git
不会写程序的未来程序员5 小时前
详细的 Git 操作分步指南
大数据·git·elasticsearch
芒鸽5 小时前
高效团队协作的基石:Git流程规范详解
git
云计算练习生8 小时前
linux shell编程实战 10 Git工具详解与运维场景实战
linux·运维·git
MUTA️21 小时前
git传输超过100MB的文件
git
ALex_zry21 小时前
Git大型仓库推送失败问题完整解决方案
大数据·git·elasticsearch