Git como sistema de copy de security y actualización remota

Tengo un dispositivo remoto al que accedo a través de un enlace inalámbrico e intermitente. El dispositivo registra datos diarios, y me gustaría poder get todas las actualizaciones de manera robusta. Pensé en usar git para este propósito:

  • Tendría un trabajo periódico que haría commit todos los loggings en el control remoto
  • En el server local, me gustaría extraer cualquier logging nuevo, para que el protocolo subyacente maneje la atomicidad y la solidez de la connection

Sin embargo, todavía tengo un problema: ¿cómo puedo mantener el repository remoto "pequeño"? Me gustaría purgar de alguna manera las revisiones que ya obtuve en el server local, pero mantener el historial en el server local.

Intenté con git filter branch y reempack, pero rompe cualquier clon. Creo que es lo mismo con git rebase –interactive, con el problema adicional de requerir la edición manual del file (es decir, cambiar pick -> squash).

¿Tal vez crear nuevas twigs cada vez y eliminarlas?

Si le preocupa el uso de espacio para el repository en el sistema remoto, le sugiero que no use Git en el sistema remoto.

Tal vez considere usar rsync para sincronizar entre los sistemas locales y remotos. Para mantener un historial en el sistema local, puede comprometerse con un repository Git en el sistema local después de cada rsync . De esta manera tiene una copy de security, con historial completo, en el sistema local y sin historial en el control remoto.

Git es bastante exagerado, cuando puedes simplemente rotar los files de logging a diario y rsync / scp, eliminando los files que acabas de copyr (aparte del file de logging actual, que aún podría escribirse).