by Antonello Lobianco.
I intend to keep the code, the user data and the db data in a single git repository that I use as backup.
I already use this method on various Drupal sites and works pretty well, as it keeps a consistent status of the web site that it is easy to restore as well as it allows to retrieve individual files.
It also facilitates the synchronisation between development and production instances.
The only problem is with cache data that change frequently, as it adds lot of useless data to the commits.
Cache data that is computed once and then remains there is not a problem.
/Antonello