【Git】:Git的基本操作

Git的基本操作

  • 一.修改文件
  • 二.版本回退
  • 三.撤销修改
  • 四.删除文件

一.修改文件

git管理的并不是文件而是修改,objects里的对象存储的其实是修改的内容。

接下来对ReadMe文件进行修改

在这里插入图片描述

1.git status查看状态

在这里插入图片描述

该命令用来查看从上次提交后到现在是否有对内容进行修改。它告诉我们暂存区里没有要提交的内容,修改的文件处于工作区,修改的文件是ReadMe。

2.git diff+文件名

git status只能知道是否修改但不能知道修改了哪些内容,而gitdiff可以。

在这里插入图片描述

它打印出来的内容是unix通用的diff格式。简单说一下,a和—代表改动前,b和+++代表改动后;-1代表改动前的第一行内容,+1代表改动后的第一行内容(如果后面跟数字代表连续几行)。接下来对文件进行提交,可以自己再使用该命令查看是否有变化。

二.版本回退

之前我们也提到过,Git能够管理⽂件的历史版本,这也是版本控制器重要的能⼒。如果有⼀天你发现之前前的⼯作做的出现了很⼤的问题,需要在某个特定的历史版本重新开始,这个时候,就需要版本回退的功能了。

执⾏ git reset 命令⽤于回退版本,可以指定退回某⼀次提交的版本。要解释⼀下“回退”本质是要将版本库中的内容进⾏回退,⼯作区或暂存区是否回退由命令参数决定。

git reset 命令语法格式为: git reset [–soft | --mixed | --hard] [HEAD]

1.soft:只回退版本库中的内容。
2.mixed:除了版本库,暂存区的内容也会回退。(默认选项)
3.hard:回退所有区内容。(慎用)
4.HEAD:表示回退到当前版本(加^回退到上一版本,加^^回退到上两个版本)

演示:回退到哪个版本就输入哪个版本的commit ID

在这里插入图片描述

可以看到当前目录里只剩下了ReadMe,其它几个文件都不见了。这是因为我们使用了hard,退回到了第一个版本,将我们的工作区也回退了,所以hard选项要慎用。(那么我们能否回到回退之前的版本呢,答案是可以的)。

在这里插入图片描述

这是因为之前使用git --log时,把两个版本的commit ID都打印了出来(当前终端并未把之前的commit ID清除掉),所以我们可以通过这个ID再次回退。

为什么版本回退很快

因为它只需要通过commit ID修改Master所指向的版本对象即可。

在这里插入图片描述

三.撤销修改

如果我们在我们的⼯作区写了很⻓时间代码,越写越写不下去,觉得⾃⼰写的实在是垃圾,想恢复到上⼀个版本.

1.情况一:没有add

此时可以用上面的办法进行版本回退,当然这有一个更简单的方法——git checkout – [filename],它会自动回退到上一次提交。

在这里插入图片描述

2.情况二:add了但没commit

此时可以使用上文的HEAD参数再加mixed参数回退暂存区,接着就是情况一了。

在这里插入图片描述

3.情况三:commit后

前提:此时代码没有push到远程仓库,本次撤销才算有效。因为在企业里运行的代码都是在远程仓库里,而撤销的目的就是为了防止错误的代码被提交到远程仓库,在这个前提下回退很简单,使用hard选项即可。

在这里插入图片描述

在这里插入图片描述

四.删除文件

1.方法一

例子:如果你已经把file3提交了,但在工作区删除了file3,此时只是工作区里的file3没有了,但暂存区里还有。

在这里插入图片描述

此时需要继续提交,当git发现提交的file3在工作区已经没有后,会自动把暂存区里的删除

在这里插入图片描述

2.方法二

使用git提供的git rm指令,可以同时删除工作区和暂存区代码。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/479511.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣日记2.20-【回溯算法篇】491. 非递减子序列

力扣日记:【回溯算法篇】491. 非递减子序列 日期:2023.2.20 参考:代码随想录、力扣 ps:放了个寒假,日记又搁置了三星期……(下跪忏悔) 491. 非递减子序列 题目描述 难度:中等 给你一…

【Docker】Docker存储卷

文章目录 一、什么是存储卷二、为什么需要存储卷三、存储卷分类四、管理卷Volume创建卷方式一:Volume 命令操作方式二:-v 或者--mount 指定方式三:Dockerfile 匿名卷 操作案例Docker 命令创建管理卷Docker -v 创建管理卷Docker mount 创建管理…

C++代码获取环境变量的值

文章目录 main.cppCMakeLists.txt运行结果 main.cpp #include <cstdlib> // 包含 getenv 的标准库 #include <iostream> #include <string>int main() {// 尝试获取环境变量const char* envValue std::getenv("Q");if (envValue ! nullptr) {// …

PostgreSQL里实现计算多个数字的排列组合

在进行排列组合的时候&#xff0c;每一次需要知道是否有重复的值&#xff0c;并过滤出已经排列过的值。这个可以创建支持可变参数的函数来实现。下边的函数用到了聚合判断&#xff0c;并且可变参数使用variadic标记的数组。 postgres<16.1>(ConnAs[postgres]:PID[188277…

【Vuforia+Unity】AR03-圆柱体物体识别

1.创建数据库模型 这个是让我们把生活中类似圆柱体和圆锥体的物体进行AR识别所选择的模型 Bottom Diameter:底部直径 Top Diameter:顶部直径 Side Length:圆柱侧面长度 请注意&#xff0c;您不必上传所有三个部分的图片&#xff0c;但您需要先为侧面曲面关联一个图像&#…

人工智能|深度学习——基于对抗网络的室内定位系统

代码下载&#xff1a; 基于CSI的工业互联网深度学习定位.zip资源-CSDN文库 摘要 室内定位技术是工业互联网相关技术的关键一环。该技术旨在解决于室外定位且取得良好效果的GPS由于建筑物阻挡无法应用于室内的问题。实现室内定位技术&#xff0c;能够在真实工业场景下实时追踪和…

[OpenAI]继ChatGPT后发布的Sora模型解析与体验通道

前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff1a;https://www.captainbed.cn/z ChatGPT体验地址 文章目录 前言OpenAI体验通道Spacetime Latent Patches 潜变量时空碎片, 建构视觉语言系统…

从零到三维GIS高级工程师,2024年最新GIS开发系统学习路线图~必看

当前&#xff0c;三维GIS技术在建筑、城市规划、交通、电信、水利、国土资源等领域具有广泛的应用前景。随着城市化进程的加速和城市规划的复杂化&#xff0c;三维GIS技术有着广阔的市场需求。 三维GIS在二维GIS的基础上&#xff0c;增加了对地球表面的第三维度&#xff0c;即高…

Java-数值类型的运算方式总结

基本数据类型 基本数据类型是cpu可以直接进行运算的数据类型&#xff0c;在JVM的栈中分配内存空间 基本数据类型分为六种&#xff1a; 数值型&#xff1a; 整数类型&#xff1a;byte(1字节)&#xff0c;short(2字节)&#xff0c;int(4字节)&#xff0c;long(8字节)浮点数类…

网络原理HTTP/HTTPS(2)

文章目录 HTTP响应状态码200 OK3xx 表示重定向4xx5xx状态码小结 HTTPSHTTPS的加密对称加密非对称加密 HTTP响应状态码 状态码表⽰访问⼀个⻚⾯的结果.(是访问成功,还是失败,还是其他的⼀些情况…).以下为常见的状态码. 200 OK 这是⼀个最常⻅的状态码,表⽰访问成功 2xx都表示…

OpenCV 4基础篇| 色彩空间类型转换

目录 1. 色彩空间基础2. 色彩空间类型2.1 GRAY 色彩空间2.2 BGR 色彩空间2.3 CMY(K) 色彩空间2.4 XYZ 色彩空间2.5 HSV 色彩空间2.6 HLS 色彩空间2.7 CIEL*a*b* 色彩空间2.8 CIEL*u*v* 色彩空间2.9 YCrCb 色彩空间 3. 类型转换函数3.1 cv2.cvtColor3.2 cv2.inRange 1. 色彩空间…

【RL】Value Function Approximation(值函数逼近)

Lecture 8: Value Function Approximation Algorithm for state value estimation Objective function 令 v π ( s ) v_{\pi}(s) vπ​(s)和 v ^ ( s , w ) \hat{v}(s, w) v^(s,w)是真实state value和近似函数。 算法的目标是找到一个最优的 w w w&#xff0c;使得 v ^ …