Git未提交状态时,找回丢失代码!

这篇具有很好参考价值的文章主要介绍了Git未提交状态时,找回丢失代码!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

起因

开发过程中,有时可能不知道自己操作了什么,然后写好的代码就被弄丢了(包括已跟踪文件或未跟踪文件)。此笔记记录的方法是通过 对象数据库(.git/objects) 目录中的数据记录来找回被弄丢的代码
Tip: .git/objects 这个目录下的数据记录,是在操作过一些 Git 命令后才会产生数据记录,例如 添加到暂存区(git add)拉取(git pull)贮藏(git stash) 等命令

使用场景

项目开发过程中如果是和别人一起开发,基本上都是使用同一个分支,这种情况下如果自己在项目里新建了其它文件并且没有对新建文件跟踪,但是自己又不想对新的文件进行提交,而且又怕不小心把未跟踪的文件弄丢找不回来的情况下,此时就可以通过操作一些 Git 命令,来在 .git/objects 目录下留有一个记录

步骤一

1.1 新建文件:首先在项目中创建一个新的文件然后随便添加一些内容
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tqbIdS0n-1684316145390)(img/1.png)]

1.2 打开 Git 终端窗口输入命令查看文件状态
输入命令后查看到有两个未跟踪的文件,此时如果删除它们的话就真的没有了,Git 也找不回来了,因为 .git/objects 中还没有记录
Git未提交状态时,找回丢失代码!

1.3 避免未跟踪的文件被弄丢,此时需要对文件进行一次 Git 操作
这里我操作一下 添加到暂存(git add) 但不 git commit,来使 .git/objects 目录产生记录
Git未提交状态时,找回丢失代码!

1.4 然后把刚刚添加到暂存区的文件再从暂存区中取出来,之后再把 testFile.vue 这个文件删除掉,再查看一下文件状态
Git未提交状态时,找回丢失代码!

Git未提交状态时,找回丢失代码!

1.5 现在项目目录中已经没有 testFile.vue 这个文件了,接下来进入到 .git/objects 目录

步骤二

2.1 开始操作找回代码,打开项目所在的目录
Git未提交状态时,找回丢失代码!

2.2 进入到 .git > objects 这个目录里
objects 这个目录下的这些子目录中存储的就是操作过的代码,刚才删掉的 testFile.vue 文件应该就在这里
初次进入该目录,目录的内容排序应该是比较乱的,点击 修改日期 使目录按时间倒序排列,你最近操作过的 Git 命令所生成的记录都是离你最近的时间
Git未提交状态时,找回丢失代码!

2.3 接下来就是从上到下挨个子目录进入挨个的查看
Git未提交状态时,找回丢失代码!

这里的每一个文件记录的都是操作过的内容,同样直接从最近的时间开始查看
Git未提交状态时,找回丢失代码!

2.4 通过 git cat-file -p 这个命令可以查看文件的内容
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!

2.5 看到内容后确定是需要找回的文件就将这个文件导出到本地,然后在放回项目目录中即可
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!
Git未提交状态时,找回丢失代码!

找回的过程稍麻烦一些,不过总比自己在重写一遍要好多了

作者:褚乾文章来源地址https://www.toymoban.com/news/detail-510240.html

到了这里,关于Git未提交状态时,找回丢失代码!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git中未提交的代码回滚丢失

    一、使用了git add操作,但是回滚后找不到的 操作: 1.进入到项目所在的有.git目录下,使用git bash here进入操作界面 2.然后使用命令: find .git/objects -type f | xargs ls -lt | sed 60q 注意:这里的60是最近60次git add的文件,可以换成你想要的次数  3.回车后出现的文件是下面的这种形

    2024年02月08日
    浏览(28)
  • 记一次Git未Commit直接Pull导致本地代码丢失后的挽救过程

    第一次遇到这种问题,有点紧张... 好吧,废话不多说,IDEA或者AndroidStudio进入Git Uncommiteed Changes - Unstash Changes: 在弹出的Unstash Changes对话框点View查看代码,如果代码是本地丢失的代码,那么恭喜你,又可以继续愉快的玩耍了。 不过千万要注意不用随便点到Drop,Clear按钮。 这

    2024年02月06日
    浏览(37)
  • git 基本操作——将本地代码提交至远程仓库的过程

    1、初始化一个新的仓库 2、添加所有文件到暂存区 3、提交所有更改 4、配置远程仓库地址, 该操作将会为名为 origin 的远程仓库设置为 remote-repository-url 5、推送代码到远程仓库 请注意,如果远程仓库中已经存在一个名为 master 的分支,并且该分支的历史记录与本地仓库的历史

    2024年02月02日
    浏览(49)
  • 使用git的add提交文件到本地仓库但未commit的文件,具体找回步骤

    进入具体项目磁盘文件位置,打开git客户端命令行工具,输入【git fsck --lost-found】命令,如下图: 进入项目下的.git文件夹,找到lost-found/other文件,这个文件夹下面的文件就是丢失的文件,如下图: 把上图字母加数字的文件名称,修改成自己需要的.java文件,就ok了,如下图

    2024年02月08日
    浏览(37)
  • # 如何在 Git 中恢复丢失的提交

    如果你在 Git 中不小心撤销了一些提交,不用惊慌!即使你觉得你的修改已经丢失,它们往往还可以被找回。在这篇文章中,我们将探讨如何使用 git reflog 和 git cherry-pick 命令以简单高效的方式恢复你丢失的工作。 首先,我们需要找到包含你想恢复的更改的提交。为此,我们

    2024年02月08日
    浏览(38)
  • 在IDEA中使用Git,将代码提交到Gitlab远程仓库,进行团队开发

    目录 一、安装Gitlab 二、在IDEA中安装Gitlab插件并登录Gitlab账号 三、将项目代码推送到Gitlab 四、从Gitlab上拉取(Pull)团队其他人修改过的代码 五、克隆代码            如果您对GIT不是了解,推荐从头开始看本栏目系列文章。本系统文章包括安装GIT、在命令行创建版本库、

    2024年02月05日
    浏览(38)
  • IDEA小技巧-Git的回滚&&强推&&代码找回

    新增文件 delete 变更文件 rollback 第一种方式 第二种方式 切换默认变更列表 undo commit 仅适用于最后一次的提交进行回滚 drop commit 回滚 revert commit revert commit 只是把代码消除但是会多一条提交记录 reset soft 在选定提交后做的所有更改都在暂存区,commit的内容都会保留,其新增文

    2024年02月04日
    浏览(44)
  • idea切换分支忘记commit,导致自己辛苦写的代码被覆盖,找不回来,别慌,这里教你一个好办法找回你未提交的代码

    问题描述:写了很多个接口,没有commit,然后拉取了同事的分支,发现自己写的代码全部不见了,被覆盖了. 解决思路:git没有commit,那么网上说的那些用git reflog git show git merge git reset --soft commmitld等等那些关于git的命令其实都没有意义的.正确的思路应该是从本地编辑软件的log记录入手

    2024年02月11日
    浏览(44)
  • IDEA小技巧-Git的回滚&&强推&&代码找回(超详细)

    PS:我们这里对 Test1 文件的 add ,commit 以及 push 展开讨论 对于新增以及修改的文件 直接鼠标右键文件进行回滚 undo commit 回退最后一次提交,且只能回退最后一次提交,commit的内容都会被保留,被修改或新增的代码都会被保留 使用 undo commit 前 使用 undo commit 后 注意:这里是

    2024年02月19日
    浏览(51)
  • 统一git使用方法,git状态变迁图,git commit提交规范

    目录 说明 统一git使用方法 git状态变迁图 git commit 提交规范 多次工作中多名员工不懂git多次技术分享,自行查资料学习git并使用,会出现使用各种偏僻的命令,异常问题无法解决;或出现带url的git合并提交;接触git1年一直在请教求助一直未入门。主要是学的不对,培训的不

    2024年02月11日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包