Git的工作原理

一、Git 的四个主要工作区

理解 Git 的工作原理需要关注它的四个主要工作区:工作目录(Working Directory)、暂存区(Staging Area)、本地仓库(Local Repository)和远程仓库(Remote Repository)。下面将详细介绍这四个工作区及其功能。

1、工作目录(Working Directory)

工作目录是你在本地文件系统中查看和编辑项目文件的地方。它包含了所有项目的文件和子目录,并且是开发者直接与项目交互的环境。每次你从本地仓库中检出某个分支时,Git 会将该分支的最新版本文件复制到工作目录中。

可以理解为工作目录就是我们一个项目的目录,可以进行代码的开发、编辑和修改。

2、暂存区(Staging Area)又称为索引(Index)

暂存区又称为索引(Index)。它是一个中间层,用于暂存工作目录中准备提交的更改。可以将它视为一个暂时的快照。在此阶段,你可以选择哪些文件或更改需要包含在下一次提交中。

3、本地仓库(Local Repository)

本地仓库包含了项目的历史版本和所有的提交记录。每次你在暂存区提交更改时(使用 git commit 命令),这些更改会被记录到本地仓库中。你可以查看历史提交记录、切换分支、回滚到之前的版本等操作。

4、远程仓库(Remote Repository)

远程仓库是存放在网络上的 Git 仓库(例如 Github、GitLab 等),通常用于团队协作。开发者会将本地仓库的更改推送到远程仓库(使用 git push),也可以从远程仓库拉取其他开发者的更改(使用 git pull)。

二、四个主要工作区域的相互关系

1、关系图

2、Git 管理的文件三种状态

1)未跟踪(Untracked):

新创建的文件,Git 不知道该文件的存在。它们没有被添加到 Git 的索引中。使用 git status 命令时,这些文件会被标记为 "untracked files"。

2)已跟踪(Tracked):

Git 已经在版本控制中记录了这些文件,它们的状态分为三种:

  • 未修改(Unmodified):文件自上次提交后没有任何更改。
  • 已修改(Modified):文件自上次提交后发生了更改,但尚未添加到索引中。
  • 已标记待提交(Staged):文件的更改已被添加到索引中,准备在下次提交中包含。

3) 已提交(Committed)

文件的状态被保存到 Git 的版本库中,成为一个版本快照。此时,文件的内容在版本库中是安全的。

相关推荐
xiaok几秒前
把代码上传到gitee的时候,怎么忽略node_modules文件夹
git·gitlab·github
唐叔在学习22 分钟前
听说有老哥分不清Git branch和tag?这不看看嘛
git·后端
雁于飞10 小时前
vscode中使用git、githup的基操
笔记·git·vscode·学习·elasticsearch·gitee·github
小毛驴85021 小时前
所有微服务部署都使用一个git地址,并且通过docker部署各个服务的情况下,如何编写mvn指令来处理各个服务。
git·docker·微服务
国王不在家21 小时前
git 切换仓库后清理分支缓存
git
柯南二号1 天前
【Gitlab】Ubuntu 20.04服务器部署Gitlab
git·gitlab
phac1231 天前
git 如何直接拉去远程仓库的内容且忽略本地与远端不一致的commit
大数据·git·elasticsearch
ficker132 天前
git常用命令
git
kevin_cat2 天前
微信群机器人-备份文件发送通知
git·bash·企业微信
程序媛Dev2 天前
50.4k Star!我用这个神器,在五分钟内搭建了一个私有 Git 服务器!
运维·服务器·git