git checout 失误后回溯

一天代码写完一定要走 git add git commit

有时候失误 git checkout xxx 源文件丢失怎么办??

理解:当前完成品代码 切换到上个版本了,完成品代码的信息不在git log内。

cpp 复制代码
查看所有分支的提交历史,包括已经被删除的提交记录。
git reflog 

0663723 (HEAD, origin/master, master) HEAD@{0}: checkout: moving from master to 0663723
0663723 (HEAD, origin/master, master) HEAD@{1}: checkout: moving from b895ee45673f5e4e4d6a778253cd736a43f67d51 to master
b895ee4 HEAD@{2}: commit: 界面美化   **成品代码文件 丢失的文件
0663723 (HEAD, origin/master, master) HEAD@{3}: checkout: moving from master to 0663723fb8293852d83dfe56173d37d555eaaf7b
0663723 (HEAD, origin/master, master) HEAD@{4}: commit: 完善界面 增加日志
3780ba2 HEAD@{5}: commit: 基本界面完成
7751245 HEAD@{6}: commit: 基本界面v2.0 基本排版
6bf13dd HEAD@{7}: commit: 基本界面
539d8e6 HEAD@{8}: commit (initial): 登录模块

git show hash 查看修改文件的记录 确定到完成品代码

找到了后比如 b895ee4 
git checkout b895ee4   //这就回到了完成品代码

git checkout master       //但是主分支不是b895ee4 使用切回去 然后再重新设置。
git reset --hard b895ee4 
git push --force origin master   //推送给远端

总结:主要还是记录一下git方法,由于是新手,有时候不知不觉的就把成品代码文件回溯到之前版本。导致一周工作量白费

相关推荐
君穆南17 小时前
基于 NFS 与 Rsync 实现跨服务器 Seafile 数据平滑迁移实战
linux·运维·git
Jurio.18 小时前
本机开发 + 多机执行的极简远端运行工具
linux·git·python·github·远程工作
阿巴~阿巴~19 小时前
Git版本控制完全指南:从入门到实战(简单版)
linux·服务器·git
遇满则缺19 小时前
新手第一次使用gitee全流程(附上常见错误以及解决方法)
git·gitee
SKILL·NULL21 小时前
如何为GIT设置全局勾子,为每次提交追加信息
git
不做超级小白1 天前
开源项目二开为何推荐使用 `git clone --depth 1`?
git·开源
星晨雪海1 天前
Idea中使用Git详细教程
git
丶党玲儿1 天前
AI-agent工程化(开源git分享)
人工智能·git·开源
笑虾1 天前
Git 学习笔记 - 合并
git
明月夜&1 天前
Ubuntu 20.04 Docker 部署 Ollama + DeepSeek-Coder:本地 AI 编程助手实战
git·vscode·ubuntu·docker·大语言模型·智能体