随笔 - 118  文章 - 0 评论 - 341 阅读 - 299万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

在上一篇简单讲述了文件状态与工作区域,在这里结合相关git命令详细了解文件的状态变更。

目录

1. 介绍

2. 常用命令

3. 实际操作

 

1. 介绍

git的文件状态是其git核心内容,了解后对后续的操作有莫大的帮助,不同的文件状态又存储在不同的工作区域中。

下面简单的说明这两者:

1.1 文件状态

git中的文件有以下几种状态:

未跟踪(untrack):表示文件为新增加的。

已修改(modified):表示修改了文件,但还没保存到git仓库中。

已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。 

已提交(committed):表示文件已保存在git仓库中。

 

1.2 工作区域

知道了文件状态,也需要知道不同的文件状态存储在不同的工作区域内。

按照本地计算机与远程计算机划分,工作区域有以下几种:

1)本地计算机

Working Directory(工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内。

Staging Area(暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存(staged)在此区域内。

Repository(本地仓库):提交到本地仓库的文件。

2)远程计算机

Repository(远程仓库):已提交到远程计算机内的文件。

 

1.3 示例图

 

2. 常用命令

git clone :将远程仓库clone到本地计算机。

git pull :拉取远程仓库的数据。

git status :展示工作区及暂存区域中不同状态的文件。

git add :将内容从工作目录添加到暂存区。

git commit :所有通过 git add 暂存的文件提交到本地仓库。

git push :将本地仓库的记录提交到远程仓库。

git reset HEAD <file> :从暂存区移除指定文件。

git checkout -- <file> :从本地仓库恢复指定文件。

 

3.实际操作

看完文件状态分类和相关命令后,来一次实际操作。

3.1 初始状态

git clone 一个仓库后,运行 git status

 

3.2 添加一个文件

在此仓库中添加一个文件a.txt,运行 git status

提示:可以看到文件上方有个 "Untracked files",表示这个文件【未跟踪】。

 

3.3 新创建的文件添加到【暂存区】

执行 git add a.txt ,将会把新创建的a.txt提交到【暂存区】,执行后运行 git status

提示:文件上方有说明使用 git reset HEAD <file> 可从暂存区移除指定文件。

 

3.4 【暂存区】的内容提交到【本地仓库】

执行 git commit ,将【暂存区】的内容提交到【本地操作】,执行后运行 git status

 

 

3.5 【本地仓库】的内容提交到【远程仓库】

执行 git push,将【本地仓库】的内容提交到【远程仓库】,执行后运行 git status

提示:可以看到提交后git状态又回到初始化状态。

 

posted on   FangMu  阅读(4720)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示