【学习心得】Git深入学习

一、深入学习Git必须熟悉两个概念

(1)【四个区】Git本地有三个区,远程仓库也可以看出成一个区域

工作区、暂存区、本地仓库、远程仓库

通过四句话来充分理解这三个区

  • 第一句话:你创建的一个文件夹,并且将它初始化成了一个Git管理的仓库(或者你从远程克隆下来了一个仓库)那么这个文件夹就是你本地仓库的工作区。
  • 第二句话:工作区中的文件或者文件夹如果发生了“变动”,需要先将“变动”添加到暂存区才能将这种“变动”提交到本地仓库,也就是上图中箭头的方向,我叫它正方向操作。(变动可以是新增、删除、修改等等)
  • 第三句话上图中的箭头也可以反过来,我叫它逆方向操作,反过来的这种行为就是回退版本,是一种版本控制行为。
  • 第四句话:回退版本的意思就是将仓库里的内容回退到暂存区和工作区,如果commit提交到了仓库,那么仓库就发生了一次状态变化,仓库中的状态就是版本。(版本 == 仓库状态,上一个版本 == 提交前的仓库状态, 当前版本 == 当前仓库的状态)

(2)【文件的四种状态】

  • 未跟踪:如果一个文件放在工作区里面,但他没有被Git管理,那么就称这个文件未被Git跟踪故叫做未跟踪。
  • 未修改:如果一个文件只是放在工作区里,没有任何修改,那么就称这个文件为未修改状态。
  • 已修改:如果一个文件工作区里被修改了,那么就称这个文件为已修改状态。
  • 已暂存:如果一个工作区里的文件被git add命令添加到了暂存区,那么就称这个文件为已暂存状态。

二、深入学习Git必须掌握逆方向操作

(1)复习一下正方向操作

# 将工作区里的文件添加到暂存区(文件被Git跟踪,跟踪=管理)
git add . 

# 将暂存区里的文件提交到本地仓库
git commit -m '说明'

# 将本地仓库里的文件推送到远程仓库
git push

其实如果你的操作是删除文件,或者修改文件,上述的注释会让你困惑,所以我更愿意用下面这种注释。

# 将工作区里的文件的“变动”添加到暂存区

# 将暂存区里的文件的“变动”提交到本地仓库

# 将本地仓库里的文件的“变动”推送到远程仓库

例如:如果你的变动是删除,那么意思就是将你在工作区删除文件这种操作行为添加到暂存区,也就是让暂存区也进行删除文件的操作。

(2)逆方向操作的学习

# 远程仓库中的改动拉取到本地仓库
git pull

# 将本地仓库里的文件退回暂存区和工作区
git reset [版本号]

# 将暂存区的文件删除(如果文件之前提交过,那么删了暂存区和工作区里的,但本地仓库里还有)
git rm filename

# 将暂存区的文件退回工作区(也就是让文件状态变成未暂存)
git restore --staged filename

需要说明git rm a.txt会把暂存区和工作区的a.txt文件都删掉。而git restore --staged a.txt只会删除暂存区里面的a.txt 

三、深入学习Git必须掌握分支

        这一块儿的内容后续更新哟(^o^)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Nocalhost 为 KubeSphere 提供更强大的云原生开发环境

1 应用商店安装 Nocalhost Server 已集成在 KubeSphere 应用商店,直接访问: 设置应用「名称」,确认应用「版本」和部署「位置」,点击「下一步」: 在「应用设置」标签页,可手动编辑清单文件或直接点击「安装…

Linux:信号

目录 1.信号 2.信号的过程 a.信号的产生 1:键盘产生, 异常产生 2:系统调用产生信号 3.软件条件产生信号 4.硬件异常产生信号 b.信号的发送 c.信号的处理 d.总结与思考 3.信号保存 1.信号及其它相关常见概念 2.在内核中的表示 3.sigset_t 4. 信号集操作函数 4.信…

MySQL 管理端口

错误 客户出现 MySQL连接数 超过 最大连接数的现象 ERROR 1040 (HY000): Too many connections 出现该现象,一般的解决方法: 1.修改配置文件中的最大连接数,之后重启数据库 2.如果配置文件中没有设置 连接超时时间的参数。8小时后&#…

前端 TS 语法 接口(2)

介绍 TypeScript的核心原则之一是对值所具有的shape进行类型检查。 它有时被称做“鸭式辨型法”或“结构性子类型化”。 在TypeScript里,接口的作用就是为这些类型命名和为你的代码或第三方代码定义契约。 只读属性 readonly 一些对象属性只能在对象刚刚创建的…

iOS开发进阶(六):Xcode14 使用信号量造成线程优先级反转问题修复

文章目录 一、前言二、关于线程优先级反转三、优先级反转会造成什么后果四、怎么避免线程优先级反转五、使用信号量可能会造成线程优先级反转,且无法避免六、延伸阅读:iOS | Xcode中快速打开终端6.1 .sh绑定6.2 执行 pod install 脚本 七、延伸阅读&…

MySQL性能测试及调优中的死锁处理方法

以下从死锁检测、死锁避免、死锁解决3个方面来探讨如何对MySQL死锁问题进行性能调优。 死锁检测 通过SQL语句查询锁表相关信息: (1)查询表打开情况 SHOW OPEN TABLES WHERE IN_USE> 01 (2)查询锁情况列表 SEL…

达梦数据实时同步软件DMHS介绍和原理

1、产品介绍 达梦数据实时同步软件(以下简称 DMHS)是支持异构环境的高性能、高可靠、高可扩展数据库实时同步复制系统。该产品采用基于日志的结构化数据复制技术,不依赖主机上源数据库的触发器或者规则,对主机源数据库系统几乎无影…

计算机msvcp140.dll丢失如何解决,分享3个简单有效的方法

在计算机系统运行过程中,用户有时会遇到一个常见的错误提示——msvcp140.dll文件缺失,这一问题的发生往往会导致部分软件无法正常启动或运行。“针对计算机系统中出现的msvcp140.dll缺失问题,小编将详尽阐述并探讨5种有效的解决策略。每一种方…

Linux的SSH服务

一.SSH服务简介 1.什么是SSH SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应…

java大学生宿舍共享厨房系统宿舍自习室宿舍洗衣房系统源码包含技术文档

主要功能:学生可注册登录,预约自己宿舍楼栋的共享厨房和评价,也可以使用该楼栋的洗衣房,查看洗衣机吹风机的使用情况和报修,还可以进入该楼栋自习室打卡和评价。管理员可管理所有的学生和宿管,分配宿舍&…

【期末不挂科-C++考前速过系列P4】大二C++实验作业-继承和派生(3道代码题)【解析,注释】

前言 大家好吖,欢迎来到 YY 滴C考前速过系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《…

【MATLAB源码-第110期】基于matlab的哈里斯鹰优化算发(HHO)无人机三维路径规划,输出做短路径图和适应度曲线。

操作环境: MATLAB 2022a 1、算法描述 哈里斯鹰优化算法(Harris Hawk Optimization, HHO)是一种受自然界捕食行为启发的优化算法。它基于哈里斯鹰的捕猎策略和行为模式,主要用于解决各种复杂的优化问题。这个算法的核心特征在于…

神经辐射场(NeRFs)的研究进展

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 摘要Abstract文献阅读:神经辐射场(NeRFs)的研究进展1、研究背景2、方法发展3、相关方法3.1、Pixel NeRF3.2、RegNeRF3.3、Mip-Ne…

全链路追踪关键技术-TraceId、SpanId生成规则

链路追踪的traceid原理梳理 如何追踪微服务调用? ● traceId,用于标识某一次具体的请求ID。当用户的请求进入系统后,会在RPC调用网络的第一层生成一个全局唯一的traceId,并且会随着每一层的RPC调用,不断往后传递&…

FFmpeg 的使用与Docker安装流媒体服务器

本文阐述的均为命令行的使用方式,并不牵扯FFmpeg 的 C音视频开发内容,补充一句,C的资料真的少,能把C学好的人,我真的是觉得巨佬。 我主要是使用FFmpeg 推流方面的知识,案例大都是靠近这方面。 一、FFmpeg…

leetcode 125. 验证回文串

题目: 如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串 。 字母和数字都属于字母数字字符。 给你一个字符串 s,如果它是 回文串 ,返回 true &…

【开源项目】深圳智慧城市~超经典CIM/BIM数字孪生可视化项目

飞渡科技数字孪生城市运行管理平台,以数字孪生为核心底层系统,将实景三维、大数据、云计算、人工智能等新一代技术,与城市管理服务相融合,构建高速率、高可靠和低延时的应用场景,打造全程全时、全模式全响应的数字孪生…

跨境电商必备:好用的邮箱推荐与实用指南

对于跨境电商企业而言,一封精炼、高效的邮件往往成为与国外买家或供应商沟通的利器。因此挑选一个得心应手的邮箱供应商,对于确保业务畅通无阻至关重要。本文将深入浅出地探讨跨境电商如何挑选邮箱,并推荐一些备受青睐的邮箱服务供应商。 一、…

LeNet-5(fashion-mnist)

文章目录 前言LeNet模型训练 前言 LeNet是最早发布的卷积神经网络之一。该模型被提出用于识别图像中的手写数字。 LeNet LeNet-5由以下两个部分组成 卷积编码器(2)全连接层(3) 卷积块由一个卷积层、一个sigmoid激活函数和一个…

GitHub项目推荐-incubator

项目地址 Github地址:GitHub - apache/incubator-anser 官网:Apache Answer | Free Open-source Q&A Platform 项目简述 这是Apache的一个开源在线论坛,也可以部署成为一个自有的QA知识库。项目主要使用了Go和Typescript来开发&#…