unison -- Unison is a file-synchronization tool for Unix and Windows
http://www.cis.upenn.edu/~bcpierce/unison/
Unison is a file-synchronization tool for Unix and Windows. It allows
two replicas of a collection of files and directories to be stored
on different hosts (or different disks on the same host), modified
separately, and then brought up to date by propagating the changes in
each replica to the other. Unlike simple mirroring or backup utilities,
Unison can deal with updates to both replicas of a distributed directory
structure. Updates that do not conflict are propagated automatically.
Conflicting updates are detected and displayed. Unison can synchronize
either locally (between volumes mounted on the same computer) or
remotely,between any pair of machines connected to the internet,
communicating over either a direct socket link or tunneling over an rsh
or an encrypted ssh connection. It is careful with network bandwidth, and
runs well over slow links such as PPP connections. Unison is available
for both Windows (95/98/NT/2K) and Unix (Linux, Solaris). Moreover,
Unison works across platforms, allowing you to synchronize a Windows
laptop with a Unix server, for example.