为什么git索引文件是二进制的?

J

我的Git目录中的大多数文件都是纯文本文件(压缩的松散对象和packfile除外)。因此,我可以只整理和编辑文件,例如.git/HEAD或,.git/refs/heads/master然后检查存储库是否损坏。

但是.git/index是二进制文件。纯文本文件不会更有用,因为它可以很容易地手动修改?

斯科特·查孔(Scott Chacon)在演示中显示了以下图像(幻灯片278):斯科特·查孔(Scott Chacon)索引

我认为,可以轻松地将其放入纯文本文件中。

那么为什么它是二进制文件而不是纯文本文件?

如“ git索引到底包含什么? ”中所示该索引包含元数据,并且如下面Jazimov指出那样引用了

  • 索引条目:对条目的引用,带有元数据(时间,模式,大小,SHA1等)
  • 引用树的“ cached trees ”(“可以从索引派生的树的预先计算哈希”),这有助于加快从树索引生成新提交的速度。

这些数据的串联使其成为二进制文件,尽管实际原因是纯粹的推测。一个人不能手动修改它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么“二进制文件”不在原始二进制文件中?

来自分类Dev

为什么“ git status”在二进制文件未修改且文件模式相同时显示修改后的二进制文件

来自分类Dev

cat为什么更改二进制文件的内容?

来自分类Dev

为什么忽略二进制文件是最佳做法?

来自分类Dev

可以在CCC配置文件中使用sh(或索引文件)代替二进制文件吗?

来自分类Dev

git:比较二进制文件

来自分类Dev

为什么二进制搜索索引以这种方式计算?

来自分类Dev

为什么以二进制格式写入文件会导致文件大小不同?

来自分类Dev

为什么GCC根据文件创建共享对象而不是可执行二进制文件?

来自分类Dev

为什么可执行二进制文件包含包含的头文件的路径?

来自分类Dev

为什么在版本控制系统中应将.pbxproj文件视为二进制文件?

来自分类Dev

为什么写此二进制文件会切断文件的结尾?

来自分类Dev

为什么cmake的安装文件与实际构建的二进制文件不同?

来自分类Dev

C ++为什么读取的二进制文件跳到结尾

来自分类Dev

g ++为什么不必链接iostream二进制文件,但对于pthread呢?

来自分类Dev

使用whereis找到ls二进制文件,但为什么找不到ll?

来自分类Dev

为什么可以匀称地解析这个“无效的”众所周知的二进制文件?

来自分类Dev

为什么“链接时间优化”会导致二进制文件更大?

来自分类Dev

为什么在二进制文件上使用cat会使终端混乱?

来自分类Dev

为什么默认情况下不使用gcc编译二进制文件

来自分类Dev

SVN差异:为什么将某些文件标记为二进制

来自分类Dev

为什么此Erlang二进制文件的binary_to_term / 1失败?

来自分类Dev

dos2unix修改二进制文件-为什么

来自分类Dev

为什么“设置二进制文件”会重置“ expandtab”属性?

来自分类Dev

为什么我的系统仅在/ snap中查找二进制文件?

来自分类Dev

为什么函数定义的顺序会更改输出二进制文件?

来自分类Dev

为什么Go会为小型程序生成大型二进制文件?

来自分类Dev

为什么在拆分二进制文件时自动对焦不再起作用?

来自分类Dev

为什么使用gccgo构建的二进制文件更小(还有其他区别?)

Related 相关文章

  1. 1

    为什么“二进制文件”不在原始二进制文件中?

  2. 2

    为什么“ git status”在二进制文件未修改且文件模式相同时显示修改后的二进制文件

  3. 3

    cat为什么更改二进制文件的内容?

  4. 4

    为什么忽略二进制文件是最佳做法?

  5. 5

    可以在CCC配置文件中使用sh(或索引文件)代替二进制文件吗?

  6. 6

    git:比较二进制文件

  7. 7

    为什么二进制搜索索引以这种方式计算?

  8. 8

    为什么以二进制格式写入文件会导致文件大小不同?

  9. 9

    为什么GCC根据文件创建共享对象而不是可执行二进制文件?

  10. 10

    为什么可执行二进制文件包含包含的头文件的路径?

  11. 11

    为什么在版本控制系统中应将.pbxproj文件视为二进制文件?

  12. 12

    为什么写此二进制文件会切断文件的结尾?

  13. 13

    为什么cmake的安装文件与实际构建的二进制文件不同?

  14. 14

    C ++为什么读取的二进制文件跳到结尾

  15. 15

    g ++为什么不必链接iostream二进制文件,但对于pthread呢?

  16. 16

    使用whereis找到ls二进制文件,但为什么找不到ll?

  17. 17

    为什么可以匀称地解析这个“无效的”众所周知的二进制文件?

  18. 18

    为什么“链接时间优化”会导致二进制文件更大?

  19. 19

    为什么在二进制文件上使用cat会使终端混乱?

  20. 20

    为什么默认情况下不使用gcc编译二进制文件

  21. 21

    SVN差异:为什么将某些文件标记为二进制

  22. 22

    为什么此Erlang二进制文件的binary_to_term / 1失败?

  23. 23

    dos2unix修改二进制文件-为什么

  24. 24

    为什么“设置二进制文件”会重置“ expandtab”属性?

  25. 25

    为什么我的系统仅在/ snap中查找二进制文件?

  26. 26

    为什么函数定义的顺序会更改输出二进制文件?

  27. 27

    为什么Go会为小型程序生成大型二进制文件?

  28. 28

    为什么在拆分二进制文件时自动对焦不再起作用?

  29. 29

    为什么使用gccgo构建的二进制文件更小(还有其他区别?)

热门标签

归档