zoukankan      html  css  js  c++  java
  • 7. Git原理

    7.1 哈希

    img

    哈希是一个系列的加密算法,各个不同的哈希算法虽然加密强度不同,但是有以下几个共同点

    • 不管输入数据的数据量有多大,输入同一个哈希算法,得到的加密结果长度固定
    • 哈希算法确定,输入数据确定,输出数据能够保证不变
    • 哈希算法确定,输入数据有变化,输出数据一定有变化,而且通常变化很大
    • 哈希算法不可逆,Git 底层采用的是 SHA-1 算法。 哈希算法可以被用来验证文件
    img

    7.2 Git保存版本的机制

    集中式版本控制工具的文件管理机制

    以文件变更列表的方式存储信息。这类系统将它们保存的信息看作是一组基本文件和每个文件随时间逐步累积的差异

    img

    Git 的文件管理机制

    Git 把数据看作是小型文件系统的一组快照。每次提交更新时 Git 都会对当前的全部文件制作一个快照并保存这个快照的索引。为了高效,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件,所以 Git 的工作方式可以称之为快照流。

    img

    Git 文件管理机制细节

    Git 的“提交对象”

    img

    提交对象及其父对象形成的链条

    img

    7.3 Git分支管理的机制

    分支的创建

    img

    分支的切换

    img
  • 相关阅读:
    HDU2203
    POJ3616
    堆排序
    POJ1386+欧拉回路
    快速排序(实现)
    HDU3549+FordFulkerson
    POJ2155
    POJ1195
    mysql案例~关于linux服务器本身的优化问题
    mysql案例~mysql主从复制延迟概总
  • 原文地址:https://www.cnblogs.com/mpolaris/p/14052232.html
Copyright © 2011-2022 走看看