difference: sort, divide, synchronize, compare, merge, unify difficult: problem, solution Diffuse.sf.net >>Diffuse is a graphical tool for merging and comparing text files. Diffuse is able to compare an arbitrary number of files side-by-side and gives users the ability to manually adjust line-matching and directly edit files. Diffuse can also retrieve revisions of files from bazaar, CVS, darcs, git, mercurial, monotone, and subversion repositories for comparison and merging. EDiff and EMerge in GNU Emacs LinuxGazette.com/issue27/marsden.html KDiff3.sf.net WinMerge.sf.net Meld.sf.net >>Meld is a visual diff and merge tool. You can compare two or three files and edit them in place (diffs update dynamically). You can compare two or three folders and launch file comparisons. xxdiff.sf.net Serice.net/mgdiff MatteoLucarelli.net/xrecursediff/index_en.htm ====synchronization: cis.upenn.edu/%7Ebcpierce/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. Unison shares a number of features with tools such as configuration management packages (CVS, PRCS, Subversion, BitKeeper, etc.), distributed filesystems (Coda, etc.), uni-directional mirroring utilities (rsync, etc.), and other synchronizers (Intellisync, Reconcile, etc). However, there are several points where it differs: * Unison runs on both Windows and many flavors of Unix (Solaris, Linux, OS X, etc.) systems. Moreover, Unison works across platforms, allowing you to synchronize a Windows laptop with a Unix server, for example. * 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. * Unlike a distributed filesystem, Unison is a user-level program: there is no need to modify the kernel or to have superuser privileges on either host. * Unison works between any pair of machines connected to the internet, communicating over either a direct socket link or tunneling over an encrypted ssh connection. It is careful with network bandwidth, and runs well over slow links such as PPP connections. Transfers of small updates to large files are optimized using a compression protocol similar to rsync. * Unison is resilient to failure. It is careful to leave the replicas and its own private structures in a sensible state at all times, even in case of abnormal termination or communication failures. * Unison has a clear and precise specification. * Unison is free; full source code is available under the GNU Public License. '" jrockey.com/develop/kfs "' KFS is a simple tool for 'synchronising' files between two sites. Usually, these two sites will be a local directory on your machine and a remote directory via FTP. KFS can scan the source site and compare the modified times of all the files with the corresponding files on the destination site. It then presents a list of files that are newer on the source site than the destination site, and offers to copy these files over. Often, the clock on your destination site will be different to that on your source site, as remote machines are frequently on a different time-zone. KFS can allow for this by detecting the time difference and taking in into account when comparing timestamps. KFS presents an easy-to-use graphical interface to manage this functionality, under the KDE desktop system. samba.anu.edu.au/rsync rsync is an open source utility that provides fast incremental file transfer. rsync is freely available under the GNU General Public License version 2 '" lyra.org/sitecopy cvsup.org