(转载)Git飞行规则(Flight Rules)
Git飞行规则(Flight Rules)
前言
英文原版README
翻译可能存在错误或不标准的地方,欢迎大家指正和修改,谢谢!
什么是"飞行规则"?
这是一篇给宇航员(这里就是指使用Git的程序员们)的指南,用来指导问题出现后的应对之法。
飞行规则(Flight Rules) 是记录在手册上的来之不易的一系列知识,记录了某个事情发生的原因,以及怎样一步一步的进行处理。本质上,
它们是特定场景的非常详细的标准处理流程。 […]
自20世纪60年代初以来,NASA一直在捕捉(capturing)我们的失误,灾难和解决方案, 当时水星时代(Mercury-era)
的地面小组首先开始将“经验教训”收集到一个纲要(compendium)中,该纲现在已经有上千个问题情景,从发动机故障到破损的舱口把手到计算机故障,以及它们对应的解决方案。
— Chris Hadfield, 一个宇航员的生活指南(An Astronaut’s Guide to Life)。
这篇文章的约定
为了清楚的表述,这篇文档里的所有例子使用了自定义的bash 提示,以便指示当前分支和是否有 ...
Git学习笔记
Git
参考文献
Git Book
如何用git命令生成Patch和打Patch
哈希
哈希是一个系列的加密算法,各个不同的哈希算法虽然加密强度不同,但是有以下几个共同点:
①不管输入数据的数据量有多大,使用同一个哈希算法,得到的加密结果长度固定
②哈希算法确定,输入数据确定,输出结果保证不变
③哈希算法确定,输入数据有变化,输出结果一定有变化,而且通常变化很大
④哈希算法不可逆
⑤哈希算法中不区分英文大小写
哈希算法有很多种,如:MD5、SHA-1等.Git 底层采用的是 SHA-1 ,因为哈希算法可以被用来验证文件,Git 就是靠这种机制来从根本上保证数据完整性的
Git特点
直接记录快照,而并非差异比较
Git把数据看作是对小型文件系统的一组快照,每次提交更新或Git中保存项目状态时,Git主要对当时的全部文件制作一个快照并保存这个快照的索引.为了高效,如果文件没有修改,Git不再重新存储改文件,而是只保留一个链接指向之前存储的文件,Git对待数据更像一个快照流.
Git中文件的三种状态
已暂存(staged): 表示对一个已修改的文件的当前版本做了标记,使之 ...