当前位置: 首页 > news >正文

毕业设计团购网站建设泰安贴吧百度贴吧

毕业设计团购网站建设,泰安贴吧百度贴吧,想自己做个公司网站不知道怎么做,爱站网挖掘工具这里写自定义目录标题 git 文件存储位置git 数据模型示例分析分析前准备命令哈希值 具体示例 不同版本的提交#xff0c;git 做了什么工作#xff1f;snapshot vs delta-based vs backup参考资料 git 文件存储位置 想要了解如何存储#xff0c;首先需要知道存储位置。 当我… 这里写自定义目录标题 git 文件存储位置git 数据模型示例分析分析前准备命令哈希值 具体示例 不同版本的提交git 做了什么工作snapshot vs delta-based vs backup参考资料 git 文件存储位置 想要了解如何存储首先需要知道存储位置。 当我们通过 git init 创建 git 仓库时会创建.git 目录.git 的目录结构如下 ├─hooks ├─info ├─logs │ └─refs │ ├─heads │ └─remotes │ └─origin ├─objects │ ├─07 │ ├─13 │ ├─2b │ ├─2d │ ├─3b │ ├─5a │ ├─5e │ ├─7e │ ├─94 │ ├─fa └─refs├─heads├─remotes│ └─origin└─tags 其中 objects 目录中存储了所有的 git 对象也是直接涉及数据文件存储的目录其他目录在此不做讨论。 那么想要了解 objects 目录中如何存储文件就需要首先了解 git 的数据模型。 git 数据模型 git 数据模型分为三种 blob 对象存储文件数据一个 blob 对象代表一个文件数据tree 对象存储文件和子目录的目录对象commit 对象也即快照包含两个指针分别指向 parent 以及 tree此外还有作者以及提交信息 通过伪代码来认识这三个对象 type blob arraybytetype tree mapstring, tree|filetype commit struct {parent: arraycommitauthor: stringmessage: stringsnapshot: tree }示例分析 使用我本地的一次提交为例分析一下这三种对象的效果。 分析前准备 命令 分析过程主要使用到两条命令。 git 中提供了 git cat-file 用来查看 git 对象分析时主要使用的参数有 -t 查看对象的类型-p 查看对象的具体内容 git 还有 git log 可以查看提交记录快速找到 commit 对象。 哈希值 git 在存储文件/目录之前会首先根据文件/目录计算 40 位哈希值。其中 前两位为子目录后三十八位为文件名称 git 存储信息时以该哈希值做索引而不是文件名。 哈希值通过 SHA-1 计算得出。 具体示例 首先通过 git log 获取提交历史 可以看到最初的一次提交对应的 commit 对象为 7ea1f87e133d400610a887ad9d9542cb03dc98ad。查看 commit 对象 可以看到 commit 对象中包含了 tree 指针、作者、提交者、提交信息等内容由于第一次提交所以并没有 parent 指针。查看 tree 对象 可以看到该 tree 对象下还有一个 tree 对象以及三个文件 blob 对象。查看 blob 对象 可以看到是一个非常简单的 go 文件。查看第二次提交对象 此处已经有 parent 对象指向了第一次提交 commit 对象。 通过上述过程我们大体可以得出以下结论 commit 对象以链式结构串联代表了不同提交的版本信息commit 对象中保留的 tree 对象包含了当前仓库的全部信息 不同版本的提交git 做了什么工作 以下图为例数据库代表 commit 对象目录代表 tree 对象文件代表blob 对象。该图代表的场景为 第一次提交时commit1 对象指向 tree1 对象tree1 对象中包含了 blob1对象以及 tree1-1对象。第二次提交时仅仅改变了 blob1 所代表的文件内容其余并没改动。 从中可以看到当第二次提交时 commit 对象commit2下创建一个新的 tree 对象tree2。对于第二次提交而言tree1-1并未改动因此 tree2 直接使用指针指向原有地址blob1发生变动则生成一个新的 blob 对象blob2并让 tree2 指向它。 完成上述操作后commit2 对象包含了当前仓库的所有信息这也就是当前时刻的 snapshot。 snapshot vs delta-based vs backup 对三者做一个简易对比。 snapshot 基于快照 每次记录当前时刻仓库状态获取当前版本信息直接获取因为每个版本都拥有整个仓库的所有信息 delta-based 基于差异 每次更新记录该版本和上个版本的差异想获取当前版本信息需要进行差异计算。 backup 备份 最原始的管理方法每做一次改动将代码全量备份到另一个位置找某个版本数据手动查找无法很难得知版本差异。 参考资料 https://cloud.tencent.com/developer/article/1923502git book
http://www.ho-use.cn/article/10816477.html

相关文章:

  • 怎样做当地网站推广移动网站建设作业
  • 做建网站镇江公交优化
  • 有没有哪个做美食的网站个人网页设计作品介绍
  • 网站自动生成江苏镇江市
  • h5制作哪个网站好做app需要多少钱
  • 庐江县建设局网站贵阳网站设计哪家好
  • 1.申请网站空间网页设计论文题目大全
  • 门户网站建设公司方案如何安装网站模版
  • 建设行政管理部门网站网站建设需求公司内部调查
  • 广东住房和城乡建设厅网站首页做网站和做app的区别
  • wordpress换域名把家seo提升排名技巧
  • 哈尔滨建站公司邯郸渊博网络有限公司
  • odoo 网站页面怎么做app 程序开发公司
  • wordpress建站要多久网站建设 锐颖科技
  • 阿里巴巴做企业网站代理网关app未运行 歌华
  • 应价交易系统网站开发网站开发推荐英文字体
  • 建网站需要多少钱和什么条件才能建万全孔家庄做网站
  • xx市院门户网站建设方案营销软文300字范文
  • 国外网站做acm题目比较好外贸建站应该怎么做
  • 开发手机网站用什么语言网站导航条内容
  • 网站开发美工总结asp网站安全
  • 一个网站一年要多少钱台州市建设项目规划网站
  • 怎么做网站_华梦服饰网站建设中
  • 盐城网站建设包括哪些做网站东莞选哪家公司好
  • 开封网站建设报价青岛做网站建设的公司排名
  • 网站建设平台汉龙中国腾讯和联通
  • 网站设计在线crm系统学做实体店网站
  • 怎么做单位网站建设网站平台合同范本
  • 富阳有没有做网站的太原企业网站制作
  • 天津网站制作软件网站实现