gpt4 book ai didi

git - 为什么 git 将文件内容存储为 blob?

转载 作者:太空狗 更新时间:2023-10-29 13:31:08 28 4
gpt4 key购买 nike

这个问题似乎很难回答,但我正在努力想出将文件内容存储为 blob 而不仅仅是其原始格式(例如文本文件)的明确优势。

通常,blob 用于代替其他媒体存储格式:图像、视频、音频等。git,至少我认为它是常用的,通常跟踪文本文件的修订和不是多媒体。

正式总结一下:将文件内容存储为 blob(转换为二进制数据)而不是修订的原始格式(例如,将其保留为文本)有什么优势?

最佳答案

“Blob”仅表示字节序列。 Git 中的 blob 将包含与文件完全相同的数据,只是 blob 存储在 Git 对象数据库中,而文件存储在文件系统中。

所以格式上没有区别,唯一的区别是它们的存储方式。

例如,如果您将图像 hello.jpg 添加到您的存储库,然后提交它,您将拥有相同数据的两个副本:

  • 您将在磁盘上有一个名为 hello.jpg文件,其中包含 JPEG 数据,

  • 您的 Git 对象数据库中将有一个blob,以其内容的哈希值命名,其中包含相同格式的完全相同 JPEG 数据.

数据库可以使用一些奇特的技巧来有效地存储数据,包括压缩和使用增量,但最终它仍然存储与原始文件中完全相同的数据。

文本文件也不异常(exception)。 “文本”只是一种特殊类型的数据,您可以将其存储在二进制文件中。

关于git - 为什么 git 将文件内容存储为 blob?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48959416/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com