[Unison-hackers] [unison-svn] r230 - in trunk: doc src
bcpierce@cis.upenn.edu
bcpierce at cis.upenn.edu
Fri Apr 13 17:29:16 EDT 2007
Author: bcpierce
Date: 2007-04-13 17:29:15 -0400 (Fri, 13 Apr 2007)
New Revision: 230
Modified:
trunk/doc/changes.tex
trunk/src/Makefile
trunk/src/RECENTNEWS
trunk/src/mkProjectInfo.ml
trunk/src/uitext.ml
Log:
* Very preliminary support for triggering Unison from an external
filesystem-watching utility. The current implementation is very
simple, not efficient, and almost completely untested. Not ready
for real users. But if someone wants to help me improve it (e.g.,
by writing a filesystem watcher for your favorite OS), please let
me know.
On the Unison side, the new behavior is incredibly simple:
- use the text UI
- start Unison with the command-line flag "-repeat FOO",
where FOO is name of a file where Unison should look
for notifications of changes
- when it starts up, Unison will read the whole contents
of this file (on both hosts), which should be a
newline-separated list of paths (relative to the root
of the synchronization) and synchronize just these paths,
as if it had been started with the "-path=xxx" option for
each one of them
- when it finishes, it will sleep for a few seconds and then
examine the watchfile again; if anything has been added, it
will read the new paths, synchronize them, and go back to
sleep
- that's it!
To use this to drive Unison "incrementally," just start it in
this mode and start up a tool (on each host) to watch for
new changes to the filesystem and append the appropriate paths
to the watchfile. Hopefully such tools should not be too hard
to write.
Since I'm an OSX user, I'm particularly interested in writing a
watcher tool for this platform. If anybody knows about
programming against the Spotlight API and can give me a hand,
that would be much appreciated.
More information about the Unison-hackers
mailing list