当前位置: 首页 > article >正文

git add成功后忘记commit的文件丢了?

  本文目标:开发人员,在了解git fsck命令用法的条件下,进行git add成功但由于误操作导致丢失的文件找回,达到找回丢失文件的程度。

文章目录

    • 1 痛点
    • 2 解决方案
    • 3 总结/练习

1 痛点

  开发过程中,分支太多(基线分支、开发分支、功能分支、…),在切换、合并等过程中,出现本地add完成,但忘记commit的文件丢失现象。

  本文以切换导致该现象为例,介绍找回方法。

  先进行场景复现。

  在develop分支,新增文件“Test.java”。

新增文件
  文件内容为:

public class Test {
	public String a;
}

  使用git add命令提交至缓存区。

add文件完成
  此时忘记git commit,直接强制切换至feature分支,并再次切换回develop分支,发现文件没了。

force切换分支文件消失

2 解决方案

  使用git fsck命令找回丢失文件。

git fsck --lost-found

丢失文件找回
  命令执行后,在隐藏文件夹“.git”中寻找丢失内容。(相对路径为“git\lost-found\other”)

文件相对路径
  查看内容:

文件内容
  文件名称不容易看出来内容,当目录下文件数量过多时,可以根据关键字使用Notepad++搜索整个目录,可以更快的找到对应文件。

3 总结/练习

  本文介绍了使用git fsck命令,找回git add成功但没有commit文件的方法。

  可以尝试在自己的项目中,使用“2 解决方案”章节的方法,进行文件找回。


http://www.kler.cn/news/319231.html

相关文章:

  • Linux、Windows、Android下查看可执行文件、动态库和静态库信息的命令
  • 数据结构|二叉搜索树
  • ProgrammerAI—AI辅助编程学习指南
  • 前端实现将二进制文件流,并下载为excel文件
  • HarmonyOS鸿蒙开发实战(5.0)自定义全局弹窗实践
  • 缓存技术的核心价值与应用
  • android studio 批量修改包名 app package name
  • 技术周总结 09.16~09.22 周日(架构 C# 数据库)
  • 基于Java,SpringBoot和Vue的仓库管理商品管理电商后台管理系统
  • 交换机和路由器的区别
  • HTML-DOM模型
  • 《深度学习》—— 神经网络中的调整学习率
  • React组件如何暴露自身的方法
  • 专题·大模型安全 | 生成式人工智能的内容安全风险与应对策略
  • 由一个 SwiftData “诡异”运行时崩溃而引发的钩深索隐(六)
  • NLP(二)-文本表示
  • JavaScript 构造函数、原型和原型链
  • 芝士派(百宝箱):阿里系智能体平台降临啦
  • python编程开发“人机猜拳”游戏
  • 财务报表中科目的指标值范围
  • web学习——day1
  • Python精选200Tips:166-170
  • Redis中String命令的基础操作
  • 简单工厂模式
  • SQL常用语法详解
  • SelMatch:最新数据集蒸馏,仅用5%训练数据也是可以的 | ICML‘24
  • 【深度学习】聊一聊正则化
  • C++之 string(中)
  • 1.1 elasticsearch分布式集群基本搭建(centos7.x + elaticsearch7.11.1)
  • 【代码随想录训练营第42期 Day60打卡 - 图论Part10 - Bellman_ford算法系列运用