ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Git入门

2022-01-05 15:36:50  阅读:133  来源: 互联网

标签:文件 Git 快照 入门 暂存区 提交 目录


Git基础

快照,而非差异

Git与其他版本控制系统最大的不同在于其对待数据的方式。从概念上来说,其他大多数版本控制系统以文件变化列表的方式存储信息,这类系统(CVS、Subversion、Perforce、Bazaar等)将其存储的信息视为一组文件以及对这些文件随时间变化所做出的变更。

 

 

而Git更像是将数据是为一个微型文件系统的一组快照。每次提交或在Git中保存项目的状态时,Git基本上会抓取一张所有文件的当前状态的快照,然后存储一个指向该快照的引用。处于效率的考虑,如果文件没有发生改动,Git则不会重新保存文件,而只是留下一个指向先前已保存过的相同文件的链接。Git更多的是将数据作为一个快照流。

 

 

几乎所有的操作都在本地执行

Git中的大部分操作只需要用到本地文件和资源,一般无需从网络中的其他计算机获取信息。如果是集中式版本控制系统,多数操作都有网络延时开销。

Git的完整性

Git中的所有数据在存储前都会执行校验和计算,随后以校验和来引用对应的数据。Git所采用的校验和机制叫做SHA-1散列。

Git通常只增加数据

当你在Git中进行处理时,基本上所有的操作都是只是向Git数据库中添加数据。很难让系统执行无法撤销的操作或是把数据搞丢。

三种状态

在Git中,文件可以处于以下三种状态之一:已提交(committed)、已修改(modified)、和已暂存(staged)。已提交表示数据已经倍安全地存入本地数据库中。已修改表示已经改动了文件,但尚未提交到数据库。已暂存表示对已修改地文件地当前版本做出了标识并将其加入了下一次要提交地快照中。由此便引入了Git项目中地三个主要地区域:Git目录、工作目录以及暂存区。

 

 

Git目录是Git保存项目元数据和对象数据库的地方。这是Git最重要的部分,也是从其他计算机中克隆仓库时要复制的内容。
工作目录是项目某个版本的单次检出。这些文件从Git目录下的压缩数据库内被提取出,放置在磁盘上以供使用或修改。
暂存区是一个文件,一般位于Git目录中。它保存了下次所要提交内容的相关信息。有时候它也被称为“索引”,不过通常还是叫作暂存区。


Git的基本工作流如下:
(1)修改工作目录中的文件;
(2)暂存文件,将这些文件的快照加入暂存区;
(3)提交暂存区中的文件,将快照永久地保存在Git目录中。
如果一个文件的某个特定版本出现在Git目录中,该版本的文件就被认为处于已提交状态。如果这个文件已被修改,并且已被放入暂存区,那么它就处于已暂存状态。如果在上次检出之后文件发生了变更,但并没有被暂存,则处于已修改状态。

 

标签:文件,Git,快照,入门,暂存区,提交,目录
来源: https://www.cnblogs.com/zhaoyunt/p/15767228.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有