I have an Ubuntu 12.04 server. Server is running rsyncd (rsync daemon), and allows an external process to rsync in files to a given path, with full control of the file structure within that given path.
These files will be ultimately used by multiple environments, in a staged fashion:
- immediate/live access for "dev", updates multiple times per day
- frozen copy of "dev" for "stage", updates manually, generally every couple of weeks
- frozen copy of "stage" for "prod", updates manually, generally every month or so
I'm attempting to find out what the best process is to be able to essentially version these files for each "frozen" release. These are binary files, so something like Git isn't ideal. I've heard that hard-linking could be useful in such a situation, but I'm not sure if that's fully applicable or where to begin looking.
A full solution is appreciated, or failing that, links/documentation pointing to either existing software or a general related solution would be fine.
EDIT: just a note, while the full directory tree could grow to several gigabytes, generally the only changes are file additions, with occasional (rare) file updates.
I think that Dirvish is what you are looking for. Take a look on rdiff-backup too.