Pro Git --- 读书笔记 (Chaptero1)
Git是什么
直接记录快照,而非差异比较
-
其他大部分系统以文件变更列表的方式存储信息,这类系统将它们存储的信息看作是一组基本文件和每个文件随时间逐步累积的差异,这通常称为基于差异的版本控制
-
Git更像是把数据看作是小型的文件系统的一系列快照,每当在git中提交更新或者保存项目状态,基本上就会对当时的全部文件创建一个快照并保存这个快照的索引。为了效率,如果文件没有修改,git不再重新存储这个文件,而是保留一个链接指向之前存储的文件。
-
Git保证完整性,git中的所有数据在存储前都计算校验和。
-
git计算校验和的机制是使用SHA-1散列,是基于文件的内容或目录结构计算出来的
-
三种状态:
- 已修改(修改了文件,但没有保存到数据库)对应工作区阶段
- 已暂存(对已修改的文件的当前版本做了标记,使之包含在下一次提交的快照中)对应暂存区阶段
- 已提交(数据已经安全保存在数据库中)对应Git目录
-
工作区是对项目的某个版本独立提取出来的内容,这些文件放在磁盘上供你使用或修改
-
暂存区是一个文件,保存了下次将要提交的文件列表信息。
-
Git仓库目录是用来保存项目的元数据和对象数据库的地方
-
git config用来设置控制Git外观和行为的配置变量
- ~/.gitconfig文件,针对用户,可以传递--global选项,对系统所有的仓库生效
- 当前仓库的Git目录中(.git/config),针对仓库,可以传递--local选项,只对当前仓库生效
-
设置用户信息
-
设置文件编辑器
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?