基于文件扩展名的备用哈希函数

问题描述 投票:0回答:1

我想使用git来跟踪媒体文件,只要关联的播放列表即可。跟踪播放列表很容易,因为它们是文本文件。关于二进制文件,我已经看过git-lfs和git-annex,但是想要探索以下方式:

Flac文件提供内部md5哈希。可以通过

访问此类哈希
metaflac --show-md5sum filename.flac

考虑到性能,我想让git使用“ flac md5哈希”,而不是git内部哈希。

怎么可能做这样的事情?

我已经阅读了gitattributes文档,但没有找到答案。

PS:第一个目标是获得闪电般的性能。第二个目标是将忽略对文件的任何元数据更改。

git git-lfs git-annex
1个回答
0
投票

无法使用自定义哈希函数来标识Git中的对象。正在进行切换到SHA-256的工作,但它不是替代您自己的哈希函数的通用框架。

Git中的CPU使用率不是由散列控制的;它以压缩为主。即使可能,使用其他哈希函数也不会产生明显的性能优势。 (我自己计算了数字,其他Git贡献者也是如此。)

另外,MD5非常弱(甚至比SHA-1还要弱),并且无论今天如何,都不应将其用于任何目的。如果需要快速散列,BLAKE2b比MD5快,实际上是安全的,并且可以调整为任意长度。

© www.soinside.com 2019 - 2024. All rights reserved.