O git
em si não fornece informações sobre propriedade e privilégios, além de informações sobre bits executáveis. A solução para você é usar etckeeper
data.
Olhando para a documentação, temos:
Most VCS, including git, mercurial and bazaar have only limited tracking of file metadata, being able to track the executable bit, but not other permissions or owner info. (darcs doesn't even track executable bits.) So file metadata is stored separately. Among other chores, etckeeper init sets up a pre-commit hook that stores metadata about file owners and permissions into a /etc/.etckeeper file. This metadata is stored in version control along with everything else, and can be applied if the repo should need to be checked back out.
Assim, a propriedade de seus diretórios é mantida em /etc/.etckeeper
, que também é monitorada por git
. ;)
-
etckeeper commit
deve resolver seu problema.
Dependendo da sua escala, eu pensaria em ferramentas de gerenciamento de configuração mais complexas e úteis, como Sal, Ansible, Puppet, Chef e assim por diante.