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

相关推荐
Leo⁵6 小时前
基于 Git 的 Obsidian 笔记同步
笔记·git
Qres8219 小时前
Git基础命令学习笔记
笔记·git·学习
REDcker10 小时前
Git分支与版本管理实践
git
Goodbye15 小时前
Git 开发必备性能
git
Wils0nEdwards15 小时前
Windows本地 git 版本管理
windows·git·elasticsearch
Niliuershangba16 小时前
ChestnutCMS 栗子内容管理系统:从入门到模板开发实战
java·git·开源·gitlab·github·开源软件·gitcode
专注VB编程开发20年16 小时前
安桌15系统文件直接存到其他目录要权限吗?/storage/emulated/0/Downloa
git
解道Jdon18 小时前
从Go转向Rust迁移指南:靠自觉 vs. 靠编译器
ide·windows·git·svn·eclipse·github·visual studio
霸道流氓气质20 小时前
Git 三方合并策略详解
git
Cry丶20 小时前
GitHub 开源项目 PR 提交流程:从 Fork 到 CLA 签署
git·github·开源贡献·pull request·cla