Pode ser útil para o seu caso rsnapshot . A partir do manpage ( página do manual rsnapshot ):
rsnapshotis a filesystem snapshot utility. It can take incremental snapshots of local and remote filesystems for any number of machines.
Em relação à sua solicitação para usar algo como git diff , rsnapshot é capaz de realizar uma operação que atenda às suas necessidades. Apenas use:
rsnapshot diff
To check the differences between two directories, call rsnapshot with the "diff" argument, followed by two backup levels or directory paths.For example:
rsnapshot diff daily.0 daily.1rsnapshot diff daily.0/localhost/etc daily.1/localhost/etcrsnapshot diff /.snapshots/daily.0 /.snapshots/daily.1This will call the rsnapshot-diff program, which will scan both directories looking for differences (based on hard links).
Existem outras alternativas também; actic é um dos melhores (IMHO). Dê uma olhada no sótão