Git 学习笔记 | Git 基本理论

Git 学习笔记 | Git 基本理论

  • [Git 学习笔记 | Git 基本理论](#Git 学习笔记 | Git 基本理论)
    • [Git 工作区域](#Git 工作区域)
    • [Git 工作流程](#Git 工作流程)

Git 学习笔记 | Git 基本理论

在开始使用 Git 创建项目前,我们先学习一下 Git 的基础理论。

Git 工作区域

Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。

如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。

文件在这四个区域之间的转换关系如下:

  • Workspace:工作区,就是你平时存放项目代码的地方

  • Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息

  • Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本

  • Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换

示例:

工作区: 我们自己写代码(文档)的地方。

本地仓库:是在开发人员自己电脑上的Git仓库,存放我们的代码(.git 隐藏文件夹就是我们的本地仓库)。

远程仓库:是在远程服务器上的Git仓库,存放代码(可以是github.com或者gitee.com 上的仓库,或者自己该公司的服务器)。

暂存区: 在本地仓库中的一个特殊的文件(index)叫做暂存区,临时存储我们即将要提交的文件。

三种操作:

  • Clone:克隆,就是将远程仓库复制到本地仓库
  • Push:推送,就是将本地仓库代码上传到远程仓库
  • Pull:拉取,就是将远程仓库代码下载到本地仓库,并将代码克隆到本地工作区

本地的三个区域确切的说应该是git仓库中HEAD指向的版本:

  • Directory:使用Git管理的一个目录,也就是一个仓库,包含我们的工作空间和Git的管理空间。

  • WorkSpace:需要通过Git进行版本控制的目录和文件,这些目录和文件组成了工作空间。

  • .git:存放Git管理信息的目录,初始化仓库的时候自动创建。

  • Index / Stage:暂存区,或者叫待提交更新区,在提交进入repo之前,我们可以把所有的更新放在暂存区。

  • Local Repo:本地仓库,一个存放在本地的版本库;HEAD只是当前的开发分支(branch)。

  • Stash:隐藏,是一个工作状态保存栈,用于保存/恢复WorkSpace中的临时状态。

Git 工作流程

Git 的工作流程一般是这样的:

  1. 在工作目录中添加、修改文件;
  2. 将需要进行版本管理的文件放入暂存区域;
  3. 将暂存区域的文件提交到git仓库。

因此,Git 管理的文件有三种状态:已修改(modified)、已暂存(staged)、已提交(committed)。

Git 常用命令流程图:

相关推荐
奋斗的牛马18 小时前
FPGA—ZYNQ学习spi(六)
单片机·嵌入式硬件·学习·fpga开发·信息与通信
Trouville0118 小时前
如何在VScode环境下使用git进行版本控制,并上传到gitee远程仓库
ide·git·vscode
被遗忘的旋律.18 小时前
Linux驱动开发笔记(十九)——IIC(AP3216C驱动+MPU6050驱动)
linux·驱动开发·笔记
我命由我1234518 小时前
Photoshop - Photoshop 工具栏(24)磁性套索工具
学习·ui·职场和发展·求职招聘·职场发展·课程设计·美工
自由日记19 小时前
css学习9
前端·css·学习
weixin_4233919319 小时前
从开发到合并:AICR 项目 Git 协作提交全流程指南
git
wyiyiyi19 小时前
【数据结构+算法】进栈顺序推算、卡特兰数与逆波兰表达式
汇编·数据结构·笔记·算法
Larry_Yanan20 小时前
QML学习笔记(五十二)QML与C++交互:数据转换——时间和日期
开发语言·c++·笔记·qt·学习·ui·交互
TL滕20 小时前
从0开始学算法——第二天(时间、空间复杂度)
数据结构·笔记·学习·算法
kblj555520 小时前
学习Linux——网络基础管理
linux·网络·学习