In a way rsync is continuously synchronizing with the backup device.
Maybe my question can be more clear with the example.
Lets assume that for a particular commit, the objects directory is copied to the backup device.
But the refs directory was not copied.
Now, when the backup device tries to do any git operation (pull or push), it would fail due to inconsistencies.
Can I revert back to my last successful commit?
I found two options that lets me copy the complete repo as a file - repack and bundle.
While repack packs(compresses) the contents inside the objects folder into one pack, bundle compresses the complete repo with history meta data, ready to be copied to another machine.
Could you comment on my understanding?