当我们不小心把档案或目录删除时,有什麽办法可以还原档案呢?
git checkout
、git reset
指令可以解决这个问题。
指令功能:还原「档案内容」
与所在的 分支(branch)有关
git checkout
指令 + 分支名称 —> Git 切换到指定的分支git checkout
指令 + 档名 / 路径 —> Git 不会切换分支,而是把档案从 .git 目录里拉一份到目前的工作目录。👉 此指令不会修改索引(即暂存区)所储存的管理资讯,而是将暂存区(Staging Area)里的内容、档案,覆盖工作目录(Working Directory)的内容或档案。
常用情况:
👉 档案已加入追踪,但想还原之前工作目录所做的修改。
🛠 实际操作
新增一个我们要编辑的档案
$ touch index.html
打开档案,编辑内容
因为 git_practice 有被 Git 版本控制,所以在这个工作目录下的档案也都有被 Git 控制,此时用 Visual Studio Code 打开时可以看到有显示橘黄色的 M 。
这是我第一次编辑的内容,要将这些内容加至暂存区
将刚刚所编辑的内容使用指令加至暂存区,并查看状态
$ git add . # 将所有档案加至暂存区
$ git status # 查看状态
档案状态可以看到显示为:Changes to be committed
(modified)
代表已加至暂存区,并等待提交。因为我们刚才是先新增 index.html 档案,然後有将档案编辑了内容,所以 Git 可以侦测到档案被修改(原本是空的变成有内容),因此状态为 modified
。
现在我们回到 index.html 档案,又新增了一行改变了内容
变更内容後存档,并查看状态 git status
可以看到红色的 modified: index.html ,这是 Git 有侦测到我们对档案做了修改,但这还只是在工作目录区所做的变动,并未加至暂存区,因此回馈讯里也说明可以使用 git add
加至暂存区并等待提交,或是使用 git checkout
舍弃这次在工作目录区所做的修改动作。
那麽如果我已经存档了这次的更动,但後来觉得做错很多步骤,不想要这一次存挡前的变更,想找回上一次的档案内容,可以怎麽做呢?
输入 git checkout 指令,并查看状态
$ git checkout index.html # 还原 index.html 的档案内容
// git checkout + [档案名称]
输入指令後,回去看我们的 index.html 档案,会变成怎麽样呢?
可以发现又再次回到原本的档案内容了!
复习 git checkout 的观念是:
<<: Day13-React 表单验证篇-使用第三方函式库 Formik 进行表单的验证
自动化 (Automation) 指的是写出一个程序,让原本需要人工手动执行的多个步骤变成全部都由程...
前言 顺利解读後,可以看得出来外资跟大盘有一定的连动性,而身为三大法人的另外两个为自营与投信单位,也...
在Swift里面,则有三种的回圈,如下所述: for…in loop while loop 我在思考...
TableLayout为表格布局,顾名思义就是利用表格方式来布局 TableLayout里面是透过T...
简单型别 + 字串 简单型别定义 Case01 - 简单型别 Controller 预期 post ...