Git не отслеживает разрешения.Он только отслеживает исполняемость.Кстати, никакие другие распространенные средства контроля версий тоже не отслеживают разрешения.Так что вам нужно что-то построенное поверх этих инструментов для отслеживания прав доступа.Например, etckeeper .
. Это работает путем добавления в репозиторий хуков, которые:
- При фиксации записывают разрешения в специальный файл и добавляют его в коммит.
- При проверке измените права доступа в соответствии с содержимым специального файла.
Вы можете даже создать что-то простое одноразовое;это довольно просто (об этом говорит Holygeek ниже).
Обратите внимание, что в рабочем дереве работают хуки.Другим репозиториям, которые просто хранят данные, ничего не нужно, и вы даже можете проверить данные в другом месте без инструмента.Файлы не будут иметь определенных разрешений там.