¿Cómo puedo realizar un seguimiento confiable de los cambios en los sitios web implementados?

Tengo muchos sitios implementados en muchos entornos diferentes para muchos clientes diferentes. Desarrollo localmente, control de versiones con git e implementación con Beanstalk, pero esto no cubre los cambios que hacen los clientes a través del back-end (por lo tanto, la database) y los files que cargan. Cuando llega el momento del mantenimiento o el desarrollo y las correcciones de errores, me siento como si estuviera empezando desde cero como si no estuviera usando git: buscando files modificados, comparando dates de files, volcados de SQL difusos … ¿Cuál es la mejor manera de rastrear los cambios en un sitio desplegado?

Caso específico:

  • Sitio de WordPress para clientes grandes
  • Cientos de publicaciones nuevas por semana
  • Publicar files adjuntos e imágenes
  • Nuevos usuarios registrados para el sitio

Todos estos son datos con los que me gustaría trabajar de forma local.

En mis sitios, tengo una URL donde puedo download todas las sums SHA1 de todos los files que están por ahí. Antes de hacer una actualización, recupero esta list y la comparo con el último set de files que coloqué allí (también coloque un file .version con el hash de revisión de hg). Con esta funcionalidad puedo determinar

  • qué files en el lado remoto cambiaron, y luego mi script de implementación se descarga automáticamente
  • y cuáles son los únicos files locales que deben transferirse al server