【Git】一文带你入门Git分布式版本控制系统(撤销修改、删除文件)
创始人
2024-05-02 11:46:15
0

个人简介

👀个人主页: 前端杂货铺
🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端
📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招)
🚀未来打算: 为中国的工业软件事业效力n年
🥇推荐学习:🍍前端面试宝典 🍉Vue2 🍋Vue3 🍓Vue2&Vue3项目实战 🥝Node.js 🥭Git🍒Three.js
🌕个人推广:每篇文章最下方都有加入方式,旨在交流学习&资源分享,快加入进来吧

Git 系列文章目录

Git 专栏参考链接
Git(一)【Git】一文带你入门Git分布式版本控制系统(简介,安装,Linux命令)
Git(二)【Git】一文带你入门Git分布式版本控制系统(必要配置、工作原理、创建/克隆项目)
Git(三)【Git】一文带你入门Git分布式版本控制系统(创建版本库、 版本回退)

文章目录

  • Git 系列文章目录
    • 一、撤销修改
      • 1、写错内容但还在工作区
      • 2、撤销工作区的修改
      • 3、写错内容并添加到暂存区
      • 4、撤销暂存区的修改
    • 二、删除文件
      • 1、创建新文件并添加提交
      • 2、删除文件
    • 三、写在最后


一、撤销修改

1、写错内容但还在工作区

在我们修改了内容后,发现了错误或不妥之处时,我们可以进行撤销修改

在这里插入图片描述

在我们提交之前,先查看一下当前状态,还好处于工作区

在这里插入图片描述


2、撤销工作区的修改

我们可以使用刚刚的提示命令,进行丢弃工作区的修改

// 把 readme.txt 文件在工作区的修改全部撤销
git checkout -- readme.txt

注意:撤销有两种情况

一种是 readme.txt 自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是 readme.txt 已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次 git commit 或 git add 时的状态。

在这里插入图片描述


3、写错内容并添加到暂存区

这时我们又写错了一些内容,并添加到了暂存区,但庆幸的是此时并没有提交到本地仓库

在这里插入图片描述

git add readme.txt
git status

在这里插入图片描述


4、撤销暂存区的修改

我们先撤销暂存区的修改,之后查看状态,再撤销工作区的修改,查看 txt 文件,很好,内容又回来了

git reset HEAD readme.txt
git status
git checkout -- readme.txt
cat readme.txt

在这里插入图片描述

扩展:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库


二、删除文件

1、创建新文件并添加提交

在这里插入图片描述

git add test.txt
git commit -m "add test.txt"

在这里插入图片描述


2、删除文件

在文件管理器中删除文件,并查看当前状态

rm test.txt
git status

此时,工作区和版本库就不一致了,git status 命令会立刻告诉你哪些文件被删除了

在这里插入图片描述

现在你有两个选择:

一是确实要从版本库中删除该文件,那就用命令 git rm 删掉,并且 git commit

git rm test.txt
git commit -m "remove test.txt"

在这里插入图片描述

另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:

rm test.txt
git status
git checkout -- test.txt

在这里插入图片描述

git checkout 其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。


三、写在最后

看完这篇文章,想必大家对 Git 撤销修改和删除文件已经有了一定的认识。

接下来,还会继续更新 Git 相关使用的文章。

在这里,给大家推荐一下 廖雪峰大佬的官方网站 ,上面有很详细的 Git 教程。

看本篇文章,有时间可以再去详细学习廖大佬的 Git 文章。


在这里插入图片描述


相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...