Remote file copy util (like rsync) but that will take account of data already copied (in this session)?

On a similar note, doesn't rsync hash all the remote files before copying? If it saw a different file with the same hash as a file that was to transfered, it could do a local copy on the remote host.

no, but Unison does.


I don't believe that there is any product ready to do that today as a single software package. There are WAN optimizers that will do this for you and then you still run RSYNC.

What you are looking for is a deduplication / reduplication process. Ideally you would not actually want to redupe but to dedupe locally and then do the RSYNC. That way you are only copying links rather than expanding the files on the other side.


If both your files are truly identical, then you would have to rsync one of the files, and then make a local copy separately on the remote side, outside of the rsync process.

If you have two identical files, then rsync will try to copy them both - the filename, rather than the checksum, is the most important identifier. (I've just tested this on my laptop!)

It would be interesting to wrap rsync to do some of the stuff you mention though...

These are worth a read:

http://en.wikipedia.org/wiki/Rsync

http://samba.anu.edu.au/rsync/tech_report/


git would do what you describe