Альтернативная функция хеширования на основе расширения файла - PullRequest
0 голосов
/ 08 января 2020

Я бы хотел использовать git для отслеживания файлов мультимедиа, если они связаны с плейлистами. Отслеживать плейлисты легко, потому что это текстовые файлы. Что касается бинарных файлов, я уже взглянул на git -lfs и git -annex, но хотел бы изучить следующий способ:

Fla c файлы обеспечивают внутренний md5 га sh. К таким ха sh можно получить доступ через

metaflac --show-md5sum filename.flac

Учитывая производительность, я бы хотел попросить git использовать "fla c md5 ha sh", а не git internal ha sh.

Как это можно сделать?

Я прочитал документацию по gitattributes, но не нашел ответа.

PS: Первая цель - добиться молниеносной производительности. Вторая цель - игнорировать любые изменения метаданных в файле.

1 Ответ

1 голос
/ 08 января 2020

Нет способа использовать пользовательскую функцию ha sh для идентификации объектов в Git. Продолжается работа по переходу на SHA-256, но это не универсальная среда для замены собственной функции ha sh.

Использование ЦП в Git не зависит от хеширования; в нем преобладает сжатие. Использование другой функции ha sh, даже если бы это было возможно, не дало бы существенного выигрыша в производительности. (Я сам набрал цифры, как и другие Git участники.)

Кроме того, MD5 чрезвычайно слаб (даже слабее, чем SHA-1), и его не следует использовать ни для каких целей В наше время. Если вам нужен быстрый га sh, BLAKE2b быстрее, чем MD5, действительно безопасен и может быть настроен на произвольную длину.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...