【发布时间】:2014-09-18 15:48:44
【问题描述】:
This thread 建议放置
*.jpg binary -delta
在.gitattribute git 中的repos 文件中,但我不确定它的作用。我找不到 git 的“-delta”标志的任何示例。
其目的显然是加快较大文件的提交或推送时间。
【问题讨论】:
标签: git github git-push git-commit gitattributes
This thread 建议放置
*.jpg binary -delta
在.gitattribute git 中的repos 文件中,但我不确定它的作用。我找不到 git 的“-delta”标志的任何示例。
其目的显然是加快较大文件的提交或推送时间。
【问题讨论】:
标签: git github git-push git-commit gitattributes
这可能与:
delta
对于属性 delta 设置为 false 的路径,不会尝试对 blob 进行增量压缩。
我在“Is the git binary diff algorithm (delta storage) standardized?”中详细介绍了增量存储。
二进制文件默认没有设置,因为:
我们最初的目标受众是使用 git 作为源代码控制系统的人。
我在我的一个存储库中 delta jpgs。如果 exif 元数据发生更改但图像数据没有更改,这很有用。我假设您可以对具有压缩和未压缩部分的其他格式执行相同的操作(我也对视频容器执行此操作)。我认为尝试 delta gzip'd 或 bzip'd 内容是没有意义的。
我也不使用“
binary”,因为我使用的是自定义差异驱动程序(二进制 表示“-diff”)。至于什么应该是默认的,直到现在默认的一直是默认不定义git属性。这很好,因为它很容易理解; git 不关心文件名,除非你告诉它。
明显的缺点是,如果没有额外的配置,它可能无法在一些不寻常的工作负载上发挥最佳性能。
将文件标记为二进制文件的最简单方法是取消设置 .gitattributes 文件中的 diff 属性:
*.ps -diff
这将导致 Git 生成二进制文件不同(或二进制补丁,如果启用了二进制补丁)而不是常规差异。
所以,是的,“设置“binary”属性也会取消设置“text”和“diff”属性,如上所述”,但杰夫说在他的情况下它只使用了-diff,这足以将文件作为二进制文件。
【讨论】:
-delta 是 .gitattributes 文件中用于将其设置为“假”的语法
binary 是-diff 的快捷方式?
Setting the "binary" attribute also unsets the "text" and "diff" attributes as above.