В настоящее время я использую некоторые децентрализованные репозитории git исключительно для ускорения синхронизации файлов по сравнению с rsync. Ускорение является значительным, например, когда в большой процент файлов в папке размером 100 ГБ приходится 1 ГБ от общего количества изменений, тогда rsync нужно прочитать немного больше, чем этот большой процент из 100 ГБ в источнике, чтобы синхронизировать и сделать толчок всего 1 ГБ.

Недостатком является то, что это сохраняет историю и, следовательно, занимает гораздо больше места, чем необходимо.

Как бы я обрезал историю только до того, что нужно? Т.е. между всеми копиями репо должна быть общая корневая фиксация, но как только появится новый общий корень, старый должен быть удален.

Может быть, используя мелкие клоны и динамически регулируя глубину этих клонов, отслеживая, где синхронизируется текущий репо? Может быть, в сочетании с этим для облегчения децентрализованной части?

0