git恢复commit过的代码
一、查看丢失记录
git fsck --lost-found
找回丢失的satsh记录,只有commit 才能够被恢复。
也可以执行git log命令找到commit id。
二、查看具体内容
git show commitId
三、找到commitId 进行git merge commitId 即可
四、git回滚文件场景总结
1、修改完还未git add:使用 git checkout 回滚
使用暂存区的文件覆盖工作区,所以执行完 git add .
之后,再执行该命令是无效的。 git checkout .
和 git add .
是一对反义词。
2、git add提交还未commit
使用 git add
提交到暂存区,还未 commit
之前,使用 git reset
和 git checkout
回滚:
git reset # 先用 Head 指针覆盖当前的暂存区内容
git checkout . # 再用暂存区内容覆盖工作区内容
或者使用直接使用 head (在git中,用HEAD表示当前版本)覆盖当前暂存区和工作区。
# 恢复当前版本,删除工作区和缓存区的修改
git reset --hard
3、已经git commit还未git push
使用 git reset 回滚:覆盖本地仓库、暂存区和工作区
git reset --hard <last_commit_id>
4、已经git push
git reset --hard <commit_id>
强制提交当前版本号:git push origin <远端分支名称> --force
五、Git:git-reflog的用法
参考:Git:git-reflog的用法总结_IT老兵驿站的博客-CSDN博客_git reflog
git-reflog()是用来恢复本地错误操作很重要的一个命令,示例如下:
比如我们想恢复到某个版本,如下:
3aba2df HEAD@{4}: commit: tor-92 [Story] 性能测试服务化,服务号触发时支持locust压测地址替换
执行如下命令即可:
git reset --hard HEAD@{4}
参考:
git stash clear后,如何找回并恢复代码
commit的内容 还原git_工作中必备的git技能(上)_weixin_39673037的博客-CSDN博客
【git撤销操作】git reset详解_Chx.zhang的博客-CSDN博客_git 撤销reset
git恢复commit过的代码相关推荐
- git 回滚/撤回提交代码、误删、误提交恢复
git回滚找回代码 上情况 情况1 git pull的时候发生冲突,修改失误,并commit了,怎么恢复? 查看所有的commit提交日志,并获取提交id git log commit 0992046 ...
- 文件在IDEA中已进行Git的Commit操作,使其从暂存区提交到本地仓库,但是未Push到远程仓库,此时进行Pull操作出现代码冲突
问题描述:文件在IDEA中已进行Git的Commit操作,使其从暂存区提交到本地仓库,但是未Push到远程仓库,此时进行Pull操作出现代码冲突 解决方法:出现上述情况时,我们要先将文件从本地仓库中拉 ...
- Git 使用场景--恢复被覆盖的代码
同事不小心在 uat 分支把我的代码覆盖了,我试着把我的 dev 分支重新合并到 uat,但是提示没有更改. 同事给我的方案是在我的 dev 分支删除我的代码,合并到 uat,然后在 dev 重新提交 ...
- git diff比较不同commit版本的代码文件异同
git diff比较不同commit版本的代码文件异同 如图,假设像知道app目录下的build.gradle文件 在两次commit(fee9f9cf4b和cdd577e352)之间的异同和变化,可 ...
- 22-07-14 西安 Git 分布式版本控制系统 、代码管理
Git是目前世界上最先进的分布式版本控制系统,Git可以做源代码管理 Git的诞生 Linus (Linus Torvalds 林纳斯.托瓦斯)是在BitKeeper停止向开源社区提供免费版本后开发了 ...
- git获取指定release版本代码
首先手里必须有release的版本的备份出来的/.repo/manifests/default.xml文件,该文件记录了每个git库的在该版本下的具体的版本情况,整个代码的sync都是依据他来的: 1 ...
- Git入门最终集!SSH公钥是乱码怎么办?IDEA与Git!将自己的代码上传至远程仓库!
Git入门最终集!SSH公钥是乱码怎么办?IDEA与Git!将自己的代码上传至远程仓库! 一.更改用户名和主机名! 因为当时Windows设置的用户名为中文名称,导致生成的SSH密钥是乱码非常难受,原 ...
- git 只commit不push 会有影响吗_规范化团队 git 提交信息
规范化团队 git 提交信息 同一个工程项目,为了方便管理,git 的 commit 信息最好按照一定的格式规范,以便在需要的时候方便使用.什么是方便的时候,比如出现了一个线上 bug,所以需要回滚操 ...
- git 将dev分支的代码合并到master并添加对应的Tag
1.参考文章如下: (1).https://www.cnblogs.com/zhangshijiezsj/p/14174896.html (2).https://blog.csdn.net/b7350 ...
最新文章
- 间谍新高度:航空航天探测器被当作间谍武器
- Winforn中怎样在窗体中打开另一个窗体
- 【论文解读】FcaNet:频率通道注意力网络论文解读
- vscode could not establish connection to linux The VS Code Server failed to start
- 【java】java AsyncHttpClient使用
- 如何使用 Windows 10 自带的磁盘清理程序?
- Android开发之隐示意图跳转
- 如何管理一盘散沙的团队?
- Elasticsearch(ES)入门,这一篇就够了
- 通常所说的微型计算机主机主要包括,通常所说的微型计算机的主机主要包括( )。...
- 盲盒小程序的开发功能介绍,优势有哪些
- Swift语言入门学习
- 微课竞赛系统的设计与实现所需工作条件_启升微课丨从软件设计开发着手准备医疗器械软件描述文档...
- 2018年回顾和收获
- 【华为OD机试真题 JS】德州扑克
- 动软代码生成器 第一次使用出现附加数据库错误是否添加写入权限
- 使用Opencv实现魔方识别(一):边缘及位置识别
- PYNQ Z2一:板子连接与测试
- 一个野蛮生长的程序员
- lsass.exe--系统错误 安全帐户管理初始化失败
热门文章
- ffmpeg将ogg和wav格式转化为mp3
- ae在哪里直接复制合成_如何在AE里复制一个层
- 一、ArcGIS Server篇:利用ArcGIS Server发布动态地图服务
- 利用ARCGIS和QGIS画等值线图
- java操作跨页的word cell_Java 操作Word表格——创建嵌套表格、添加/复制表格行或列、设置表格是否禁止跨页断行...
- 贵卅大学计算机研究生院导师,贵州大学机械工程学院研究生导师:罗绍华
- 状态码的含义,以及HTTP中常见的状态码
- Solidworks如何为装配体绘制剖面视图
- JavaScript随手笔记---保留小数位
- Android实现身份证识别