git pro 笔记

版本控制发展历程:

1.本地版本控制(复制文件)、rcs(打补丁,补丁记录文件变更内容)

2.集中化版本控制系统(CVCS,集中管理服务器,服务器宕机,无法提交和下载;服务器磁盘损坏,数据直接丢失)

3.分布式版本控制系统(DVCS,将整个代码仓库镜像到本地)

git与已有版本控制的差异:

1.直接记录快照而非差异比较,变化了记录快照,没变化,指向原有快照链接;而已有版本控制只记录每次文件变化内容。

2.几乎所有操作都是本地执行,本地有完整库,可以随时回退版本而不需要联网进行回退;可以随时提交更新到本地库,有网之后再提交到远程库。

3.验证数据完整,保证每次数据变化都能记录。

git内文件的三种状态(已提交committed,已修改modified,已暂存staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。

 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。

每个项目都是一个本地仓库,本地仓库保存了该项目的所有版本数据;从项目中取出某个版本的所有文件和目录,用以开始后续工作的叫做工作目录。这些文件实际上都是从 Git 本地仓库中的压缩对象数据库中提取出来的,接下来就可以在工作目录中对这些文件进行编辑。

基本的 Git 工作流程如下:
1.在工作目录中修改某些文件。
2.对修改后的文件进行快照,然后保存到暂存区域。
3.提交更新,将保存在暂存区域的文件快照永久转储到 Git 目录中。

所以,我们可以从文件所处的位置来判断状态:如果是 Git 目录中保存着的特定版本文件,就属于已提交状态;如果作了修改并已放入暂存区域,就属于已暂存状态;如果自上次取出后,作了修改但还没有放到暂存区域,就是已修改状态。


工作目录下面的所有文件都不外乎这两种状态:已跟踪或未跟踪。已跟踪的文件是指本来就被纳入版本控制管理的文件,在上次快照中有它们的记录,工作一段时间后,它们的状态可能是未更新,已修改或者已放入暂存区。而所有其他文件都属于未跟踪文件。它们既没有上次更新时的快照,也不在当前的暂存区域。初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值