标签:
Git与SVN的区别:Git会把每次提交的文件全部内容都记录下来。
SHA
Git里常见‘40个字符’的字符串,是用来索引所有项目历史信息的文件。
每一个对象名都是对对象内容做SHA1运算,内容不一样则SHA1值不一样;只有他们的内容完全相同,SHA1值才会相同。
blob对象和tree对象和其他对象一样,都是用其内容的SHA1值来命名的,因此Git可以仅仅根据tree对象的名字是否相同来判断其对象内容是否一样。
对象
对象分为类型、大小、内容三部分,有四种类型的对象:blob、tree、commit、tag。
对象模型
如下图所示,commit对象指向根tree对象,每个目录都创建了一个tree对象,每个文件都创建了一个blob对象。
标签:
原文地址:http://www.cnblogs.com/corykang/p/4851622.html