git 删除文件后如何恢复[通俗易懂]

git 删除文件后如何恢复[通俗易懂]有时候不小心在git中rm了文件。怎么恢复呢?别急,咱们一步步来。首先gitstatus一把,看看此时工作区的状态[xxx@xxxstatic_files]$gitstatus#Onbranchmasternothingtocommit(workingdirectoryclean)可见此时没有任何修改的内容。再看看具体有什么xxx@xxxstatic_files]$


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

项目github地址:bitcarmanlee easy-algorithm-interview-and-practice
欢迎大家star,留言,一起学习进步

有时候不小心在git中rm了文件。怎么恢复呢?别急,咱们一步步来。

首先git status一把,看看此时工作区的状态

[xxx@xxx static_files]$ git status
# On branch master
nothing to commit (working directory clean)

可见此时没有任何修改的内容。
再看看具体有什么

xxx@xxx static_files]$ ls
abbr_data  breakfast_data  room_type_data

此时总计有三个文件。OK,让我们干掉其中一个

[xxx@xxx static_files]$ git rm abbr_data
rm 'static_files/abbr_data'
[xxx@xxx static_files]$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#	deleted:    abbr_data
#
[xxx@xxx static_files]$ ls
breakfast_data  room_type_data

此时工作区的文件就只剩两个了,abbr_data这个文件,已经被我们干掉。

如果我们想要恢复,怎么办呢?

[xxx@xxx static_files]$ git checkout -- abbr_data
error: pathspec 'static_files/abbr_data' did not match any file(s) known to git.

直接checkout,是不行的。
那怎么办呢?其实在git status中,已经告诉我们怎么办了。

[xxx@xxx static_files]$ git reset HEAD abbr_data
Unstaged changes after reset:
M	static_files/abbr_data

用reset命令,先将abbr_data这个文件找回来。

[xxx@xxx static_files]$ git status
# On branch master
# Changed but not updated:
#   (use "git add/rm <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#	deleted:    abbr_data
#
no changes added to commit (use "git add" and/or "git commit -a")

再checkout一把

[xxx@xxx static_files]$ git checkout -- abbr_data
[xxx@xxx static_files]$

看到checkout以后没有任何提示,这事就成了。因为git的哲学跟unix的哲学一样,没消息就是最好的消息。。。

再ls一下,果然,abbr_data找回来了。

[xxx@xxx static_files]$ ls
abbr_data  breakfast_data  room_type_data
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172143.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • onPropertyChange 事件详解

    先看这么一段解释:onpropertychange:当在对象上进行属性改变时候触发onchange:当对象内容或者选择内容改变时候触发当一个HTML元素的属性改变的时候,都能通过onpropertychange来捕获。例如一个&lt;inputname="text1"id="text1"/&gt;对象的value属性被页面的脚本修改的时候,onchange无法捕获到,…

    2022年4月6日
  • 第一课 Delphi7完全自学教程「建议收藏」

    第一课 Delphi7完全自学教程「建议收藏」   首先声明,我会以delphi7教程为主,可能会在这方面用的时间比较多,废话不多说了,今天给大家带来delphi7中最基本的面向对象程序设计语言。delphi是可视化的编程语言,delphi利用提供可视的"组件",像组件里添加一些功能或命令,该程序就有了自己所拥有的功能,比如说给组件“Button1”添加双击事件,然后干什么了?给窗体起个名字,或给按钮起一个名字都可以。这就是可视…

    2022年6月20日
  • Cortex-A53架构(记笔记的方法)

    1.前言一颗芯片最主要的就是CPU核了,处理CPUCore之外,还存在很多其他IP,包括Graphical、Multimedia、MemoryController、USBController等等。ARMproducts列出了主要产品,其中Architecture和Processors需要重点关注。Architecture扩展的四大领域:SecurityExtensio…

    2022年4月13日
  • web基础知识总结_Web站点基础阶段包含哪些阶段

    web基础知识总结_Web站点基础阶段包含哪些阶段传统身份验证的方法:HTTP是一种没有状态的协议,也就是它并不知道是谁是访问应用。这里我们把用户看成是客户端,客户端使用用户名还有密码通过了身份验证,不过下回这个客户端再发送请求时候,还得再验证一下。解决的方法就是,当用户请求登录的时候,如果没有问题,我们在服务端生成一条记录,这个记录里可以说明一下登录的用户是谁,然后把这条记录的ID号发送给客户端,客户端收到以后把这个ID号存储在C…

    2022年10月28日
  • 王艳茹网课答案创业基础超星尔雅答案2021

    王艳茹网课答案创业基础超星尔雅答案2021创业的概念与功能1【单选题】下列对创业定义理解不正确的一项是(B)A、创业者通过资源整合来达到创业目标B、创业伴随新行业的出现C、寻求机会是产生创业活动的重要一环D、创业伴随新价值的产生创业的要素和阶段1【单选题】创业的关键要素不包括(C)A、机会B、团队C、技术D、资源2【多选题】创业可分为哪些阶段(ABCD)A、机会识别B、资源整合C、新企业创办D、企业生存3【多选题】下列说法中正确的有(ABC)A、商业机会是创业过程的重…

    2022年6月6日
  • HTTP Header里的Range和Content-Range参数[通俗易懂]

    HTTP Header里的Range和Content-Range参数[通俗易懂]HTTPHeader里的Range和Content-Range参数转自:http://hongjiang.info/http-header-range-and-content-range/这个话题是从实现一个http资源的静态访问引发的。http协议从1.1开始支持获取文件的部分内容,这为并行下载以及断点续传提供了技术支持。它通过在Header里两个参数实现的,客户端发请求时对应的是Ra…

    2022年8月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号