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个分支。

相关推荐
LostSpeed13 分钟前
git - github工程中不能包含大文件
git·github
pzx_00121 分钟前
【GIT】删除远程文件
git
小白_ysf1 小时前
Git 命令操作完整指南(实际工作中常用命令)
git·代码上传
HealthScience1 小时前
怎么使用git下载huggingface的文件
git
huangjiazhi_2 小时前
git clone next InitializeSecurityContext failed错误
git
_oP_i3 小时前
git gui设置github sshkey
git·github
ergevv3 小时前
Git 子模块(Submodule)操作指南
git·子模块·submodule
阿拉伯柠檬5 小时前
Git原理与使用(一)
大数据·linux·git·elasticsearch·面试
chao_7895 小时前
双设备全栈开发最佳实践[mac系统]
git·python·macos·docker·vue·全栈
大卫小东(Sheldon)21 小时前
GIM 2.0 发布:真正让 AI 提交消息可定制、可控、可项目级优化
git·rust·gim