git学习笔记


git学习笔记

简介

git是一种免费开源的分布式版本控制系统。

版本控制是什么?

版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。简单来说就是用于管理多人协同开发项目的技术。

笔者认为,版本控制就是记录文件的各个历史版本。

版本控制系统(Version Control System,VCS)是一种软件,能够随着时间的推进记录一系列文件的变化,方便以后随时回退到某个版本。

分布式版本控制系统(简称DVCS)是一种允许每个团队成员在他们自己的计算机上拥有代码仓库的完整拷贝,这样他们可以在本地进行代码的提交、创建分支和代码合并。与传统的集中式版本控制相比,服务器不需要为每个代码分支单独保存一个文件,它仅保存每次代码提交之间的差异。

初始化配置

配置用户名:

git config --global user.name "Your Name"

配置邮箱 :

git config --global user.email "mail@example.com"

存储配置 :

git config --global credential store

–global 参数表示这台机器上所有的Git仓库都会使用这个配置

新建库

版本库,又称仓库,英文为repository,简写为repo,是git用于版本控制的数据库,能记录其中文件的增删查改。

库可以被简单的理解为一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。

创建版本库就是使得一个文件目录能被git管理。我们用git init指令来实现

git init

在使用git init后,该库会有一文件夹.git

这个文件夹记录了该库的所有数据,如增删查改的记录等。

我们也可以使用git clone +url 的方式拉取库

工作区域与文件状态

git有三个工作区域:工作区、暂存区、git仓库目录

工作区是对项目的某个版本独立提取出来的内容。 这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。

暂存区是一个文件,保存了下次将要提交的文件列表信息,一般在 Git 仓库目录中。 按照 Git 的术语叫做“索引”,不过一般说法还是叫“暂存区”。

Git 仓库目录是 Git 用来保存项目的元数据和对象数据库的地方。 这是 Git 中最重要的部分,从其它计算机克隆仓库时,复制的就是这里的数据。

git提交修改需要先git add到暂存区,在git commit到Git 仓库目录

工作区是.git所在的目录

暂存区是文件.git/index

git仓库目录是.git/objects

![](https://raw.githubusercontent.com/ymjjj/picture-bed/main/屏幕截图 2024-01-19 110535.png)

于是文件也有相应地三种状态: 已提交(committed)已修改(modified)已暂存(staged)

  • 已修改表示修改了文件,但还没保存到数据库中。
  • 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
  • 已提交表示数据已经安全地保存在本地数据库中。

已修改(modified)通过git add 变成已暂存(staged)

已暂存(staged) 通过git commit 变成已提交(committed)


文章作者: 求索
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 求索 !
  目录