Git 文件状态

Git入门教程,详解Git文件的四大状态 大家好,欢迎来到周一git专题。 git clone 在上一篇文章当中我们聊了怎么在github当中创建一个属于自己的项目(repository),简称repo。除了建立自己的repo之外,我们更多的情况是拷贝别人的repo,这样才可以获得别人整理好的代码资料什么的,也更符合开源(白嫖)精神嘛。 这也不是什么难题,相信很多人都知道,当我们想要获取其他人的repo的时候,可以通过git clone命令进行拉取。比如你想要获取我们这个教程的repo,可以通过下面这个命令。 git clone git@githu 阅读详情

        每个项目都有一个 Git 目录,如果是采用 git clone 出来的话,就是其中 .git 的目录;如果 git clone --bare 的话,新建的目录本身就是 Git 目录。它是 Git 用来保存元数据和对象数据库的地方。该目录非常重要,每次克隆镜像仓库的时候,实际拷贝的就是这个目录里面的数据。

        从项目中取出某个版本的所有文件和目录,用以开始后续工作的叫做工作目录。这些文件实际上都是从 Git 目录中的压缩对象数据库中提取出来的,接下来就可以在工作目录中对这些文件进行编辑。

        所谓的暂存区域只不过是个简单的文件,一般都放在 Git 目录中。有时候人们会把这个文件叫做索引文件,不过标准说法还是叫暂存区域。

        对于任何一个文件,在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。

         我们可以看到 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。

                                                                   


      基本的 Git 工作流程如下:

  1. 在工作目录中修改某些文件。
  2. 对修改后的文件进行快照,然后保存到暂存区域。
  3. 提交更新,将保存在暂存区域的文件快照永久转储到 Git 目录中。

        所以,我们可以从文件所处的位置来判断状态:如果是 Git 目录中保存着的特定版本文件,就属于已提交状态;如果作了修改并已放入暂存区域,就属于已暂存状态;如果自上次取出后,作了修改但还没有放到暂存区域,就是已修改状态。

        工作目录下面的所有文件都不外乎这两种状态:已跟踪或未跟踪。已跟踪的文件是指本来就被纳入版本控制管理的文件,在上次快照中有它们的记录,工作一段时间后,它们的状态可能是未更新,已修改或者已放入暂存区。而所有其他文件都属于未跟踪文件。它们既没有上次更新时的快照,也不在当前的暂存区域。初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改。

        在编辑过某些文件之后,Git 将这些文件标为已修改。我们逐步把这些修改过的文件放到暂存区域,直到最后一次性提交所有这些暂存起来的文件,如此重复。所以使用 Git 时的文件状态变化周期如图所示。

                                          
嵌入式工程师必看:BLDC电机驱动电路设计全流程(附MOS管选型指南) 本文为嵌入式工程师提供了BLDC电机驱动电路设计的全流程实战指南。文章深入解析了三相全桥逆变电路的核心原理,并重点阐述了功率MOSFET的选型关键参数,如Vds、Rds(on)和Qg。同时,详细介绍了栅极驱动设计、PCB布局布线要点及调试安全步骤,旨在帮助开发者构建稳定高效的BLDC驱动系统。 阅读详情

相关推荐

ARM和FPGA之间的通信(硬件原理图篇)

设计该开发板的初衷是为了学习,但也希望今后能扩展其功能,看到大家都在diy示波器,自己也非常冲动的想DIY一把,于是呼选了arm+fpga的方案,fpga主要用来实现数据的高速采样,而ARM则提供数据的显示,以及一些人机交互的功能。那么该方案中最重要的地方就是ARM和FPGA之间的通信如何实现了。在网上查了很多的资料,有说将FPGA作为ARM的一个外设,可以通过DMA的方式来直接访问;也有说把FP

屌yy的博客 5万+

git库所在的文件夹中的文件大致有4种状态

Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为。Index / Stage: 暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息。Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过。使用commit命令将暂存区的文件提交到本地仓库—>Unmodified。则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为。

qq_48739372的博客 737

S32K144 ADC硬件触发+DMA传输实战:从寄存器配置到数据采集全流程

本文详细解析了S32K144微控制器中ADC硬件触发与DMA传输的协同工作机制,提供了从寄存器配置到数据采集的全流程实战指南。通过PDB定时触发ADC转换,并利用DMA实现数据自动搬运,构建了高效、实时的汽车级数据采集系统,有效释放CPU资源,满足汽车电子应用的严苛要求。

weixin_29194693的博客 474

3. git中文件的三种常见状态

git中关于文件的几种状态含义理解

山间点烟雨 995

基于MATLAB的基本数字调制解调系统的设计

基于MATLAB的基本数字调制解调系统的设计一、摘要现代通信系统要求通信距离远、通信容量大、传输质量好,作为其关键技术之一的调制解调技术一直是人们研究的一个重要方向。本文以MATLAB为软件平台,充分利用其提供的通信工具箱和信号处理工具箱中的模块,对数字调制解调系统进行Simulink设计仿真,并且进行误差分析。调制与解调是通信系统中十分重要的一个环节,针对不同的信道环境选择不同的调制与解调方式可...

m0_55395440的博客 5549

[ESP32S3N16R8][LVGL8.3.0][IDF5.2.3]ST7701S RGB屏幕驱动[vscode最详细配置]

ST7701S ESP32S3 基于ESP-IDF5.2.3编写,编程环境为vscode。本教程详细讲述了esp32s3配置st7701s屏幕驱动以及gt911触摸驱动并关联到lvgl8.3.0,使用IDF5.23示例rgb_panel进行测试删除了其里面的屏幕驱动,改为单独编写屏幕和触摸驱动,最后完成了实列。

qq_44022379的博客 2604

git中文件的状态&状态切换

在 Git 中,文件的状态是指文件相对于 Git 仓库的当前情况。这是新创建的文件或从其他位置复制过来的文件,Git 还没有开始跟踪这些文件的更改。这些文件不会出现在git status命令的 "Changes to be committed" 部分,而是出现在 "Untracked files" 部分。文件已经被修改,但还没有添加到暂存区。这些文件出现在git status命令的 "Changes not staged for commit" 部分。

weixin_62594908的博客 1390

雷达回波仿真

文章目录前言一、基础理解1.慢时间维度和快时间维度2.脉冲压缩3.MTI4. 脉冲多普勒处理5.cacfar检测二、具体流程1.产生回波信息加入目标时延以及噪声2.解调回波得到基带信号3.脉冲压缩 MTI MTD cafar检测 前言 雷达算法仿真学习,主要流程包括生成目标回波,将基带信号加在载波上其次是加上目标信息和干扰信号后发射,解调回波信号得到基带信号然后MTI,MTD,最后再检测。 一、基础理解 1.慢时间维度和快时间维度 连续M个脉冲回波经过相干解调之后的基带数据形成的一个二维数据矩阵,.

qq_42961235的博客 1万+

Git文件操作指令和文件状态

我们在新创建且初始化过后的 git 仓库中新建一个文件,然后在 git 的命令行中输入此指令后,就可以看到的状态:在此显示的是 Untracked 的状态,也就是未追踪状态。

Stewie Lee的博客 1555

稳定性性能系列之十五——系统稳定性监控体系建设:从指标到预警的完整方案

深入探讨Android系统稳定性监控体系的设计与实现,涵盖指标体系设计、数据采集方案、异常检测算法、预警响应机制,并提供完整的监控平台搭建实践。

Cheson的专栏 1357

基于STM32设计的掌上游戏机(运行NES游戏模拟器)详细开发过程

利用STM32单片机移植NES游戏模拟器,完成NES游戏开发,可以玩标准的NES游戏,已测试超级玛丽、魂斗罗之类的都可以正常运行。

4万+

Git仓库中文件的状态

git库中文件状态

Andy的博客 773

利用恒源云在云端租用GPU服务器训练YOLOv8模型(包括Linux系统命令讲解)

为当涉及到深度学习的训练任务时,GPU的计算能力是不可或缺的。相对于传统的中央处理器(CPU),图形处理器(GPU)具有更强大的并行计算能力,能够显著加速深度学习模型的训练过程。深度学习算法通常涉及大量的矩阵运算和张量操作,而GPU的并行计算架构使得它们能够高效地执行这些计算,从而加速模型训练的速度。恒源云是一个经济高效的云计算平台,您可以通过恒源云的控制台或者命令行界面来管理实例、上传和下载数据、执行训练任务等。

Snu77的博客 6721

git 查看某文件状态

查看某文件状态 之前的文章,我们已经成功添加并提交了一个txt文件 现在我们将学习如何查看此文件是否修改过,修改的具体内容。 现在在本地操作可能感受不到这有多大的用处。但是在以后的远程连接中,如果有别人或者自己修改出错了,并且是很长时间前修改的,忘了修改的具体位置或代码,怎么办呢? 首先我们先试着修改一下我们的txt文件(这里的txt文件是上一个文章创建的) 保存后,运行git status命令: 我们可以看到,文件被修改了,但这是还没有被提交的修改 在没有修改之前,是这样的: 那么如何查看修改内容呢

AMT_MUZI的博客 1458

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Git详解之文件状态

前言   其实文件状态根据不同场景有不同的描述,例如:已跟踪、未跟踪、已暂存、已修改、未修改等等,乱七八糟的,今天个人根据自己的使用经验对其进行分类,如有不同建议或者更好的想法也可以留言评论,万分感谢! 根据文件内容状态 被git管理的工作目录中的文件无非两种状态:已跟踪或者未跟踪。已跟踪的文件是指那些被git管理的文件,在上一次快照中有他们的记录。已跟踪的文件可的状态能是未...

dengji8750的博客 390

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

git status 状态命令——查看文件状态

git status 状态查看命令——查看文件状态语法描述git status-s --short 选项——精简输出-b --branch 选项——显示分支和追踪信息-v --verbose 选项——显示变更的文本内容-u[<mode>] 语法 git status [<选项> …​] [--] [<路径名> …​] 提示:方括号 [ ] 表示可选,...表示可以有多项。 描述 显示暂存区文件和当前 HEAD 提交之间有差异的路径,工作区和暂存区文件之间有差异的路径,

weixin_44567318的博客 1万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

git中的语法和文件状态

未跟踪(Untracked):文件尚未被Git跟踪,不在版本控制之下。已修改(Modified):文件在工作目录中发生了更改,但尚未被暂存。未修改(UnModified):文件在工作目录中未发生更改。已暂存(Staged):文件的当前版本已经被暂存,准备提交到版本库中。已提交(Committed):文件的更改已经被永久保存到本地版本库中。#表示注释*表示匹配任意多个字符?表示匹配任何一个字符!表示取反取反[abc]表示匹配方括号当中的任何一个字符。

baomingshu的博客 1660

Git 文件状态的流转

git 文件流转

weixin_45357298的博客 376

git文件的四种状态和git的四个工作区域

git文件的四种状态和git的四个工作区域

Peng__java的博客 981

git status-检查文件状态

检查文件状态的主要工具是git status命令,如果你在clone项目后直接运行这个命令 你可以看到下面的结果 这意味着你又一个干净的工作目录,换一句话说,你的所有tracked文件都没有被更改,Git也没有看到任何untracked文件,这个命令告诉你你在哪个分支上面,并且可以知道你的分支和在服务器上的分支状态是一致的, 默认的分支是master 实例: 添加一个新的文件到项目中,一个简单的R...

tugangkai的专栏 1559

git学习(二) git的文件状态

git的文件状态 用于查看git的状态 git status    用于git文件的删除操作 git rm   如果只是 git rm --cache 仅删除暂存区里的文件;   如果不加--cache 会删除工作区里的文件 并提交到暂存区 文件检出 git checkout   直接加文件名 从暂存...

weixin_30917213的博客 248

对git中文件各个状态的理解

我之前开发java项目的时候也有用过版本管理工具svn,不过老是弄不清楚各个状态之间的关系和操作的含义,最近使用github管理自己的代码和一些笔记,对于一些操作还是不太理解(太笨了。。。),网上也查过一些零零碎碎的相关内容,不过还是模糊不清。于是我打算较为系统地学习一下git和github。http://git-scm.com/book/zh/v1这个网站系统地介绍了git原理还有操作等等,有兴

1246

Git的三个工作区和文件的三种状态

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点 我们在使用Git的时候一般有3个工作区的概念:Git 仓库、工作目录以及暂存区域。其中工作目录比较好理解,就是我们开发时修改文件的那些目录,Git 仓库就是我们项目目录下面的 .git目录中的内容,而暂存区域是保存已经被Git标记过,将要提交保存到Git数据库中的文件的地方 ...

AntDream的程序世界 1631

git status 查看文件更改状态

文章目录1. 前言2. 新文件3. 修改文件4. 删除文件5. 文件状态总结6. git status -s 简短输出结果 1. 前言 status 命令用于查看工作区中文件的状态 git status 命令是 git 中最常用的命令之一,当我们要执行命令操作时,一般都会先执行这个命令查看下当前工作区文件状态,因为只有当我们知道当前状态是什么,才会清楚的知道,我们接下来应该怎么进行操作 使用示例 git status git status -s 2. 新文件 当在工作区中创建一个新的文件 User.

辰风沐阳 5843

git中文件的三种状态

1.还未被git追踪的状态 在git中新建一个newText的文件:git status Untracked files:   (use "git add ..." to include in what will be committed) newText 显示是newText未被追踪,可以用git add file来添加 2.修改已经添加到git中 接下面按提示执行命令

zhangjie1989的专栏 2678

GIT第三讲 四种文件状态和索引

通过上一节的内容,大家已经知道了Git的几个常用命令,这一讲将会给大家介绍GIT的几种文件状态,文件状态和git的索引息息相关,所以该部分的内容可以帮助大家很好的理解git的原理。git的文件状态如下图所示 git的文件有如下四种状态:  - Untracked  - Unmodified  - Modified  - Staged 在开始讲解这四种状态之前,我们需要了

xiao_xuwen的博客 2571
上一篇: Java的发展趋势向好向坏?
CrazyJMonkey
博客等级 码龄14年 7粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值