On Tue, 2004-09-14 at 16:48, Havoc Pennington wrote: > On Tue, 2004-09-14 at 16:31 -0700, Per Bjornsson wrote: > > Such a system keeps track of what files got changed on what side. It > > pretty much punts to the user if changes have been made to a file on > > both ends. (You can plug in a merge tool for merging text files though; > > I don't think that there is really any hope to "merge" more complex > > documents with any particular degree of automation.) > > The merge part is where we think a large number of users will just go > "huh?" ... though it doesn't hurt to have two-way sync available, it > might be sort of a high effort to benefit ratio because of the UI > problem. Yes, presenting true file merging functionality is certainly difficult, but propagating files that have only been changed on one end in the right direction should be doable completely automatically. I believe that this solves the main problem. One alternative to presenting true merge functionality might be something like a dialog box that asks: --- The file "my-spreadsheet.sxi" has been changed both on the server and on your local computer since the last synchronization. <Overwrite server copy> <Overwrite local copy> <Rename local copy> --- (Gnome style button order, "Rename local copy" is the default, and it then pops up something that looks like the Nautilus rename dialog box.) Is that a usability disaster too? In any case, if syncs are done often (as they should be if this is supposed to keep things backed up), the likelihood of this situation (essentially a screwup) is fairly small, at least for personal directories. Of course doing something like this with a shared directory with lots of people working on the files is more difficult, but without some kind of out-of-band locking mechanism (e.g. an e-mail saying "hey, can you look at my changes and see if you like them") this is very difficult anyways. Both MS Office and OpenOffice.org have some version control features as far as I know, but do either of them deal with merging documents that have diverged from a common source? As a side note, I personally actually don't think that the Unison interface (where you get a list of changed files and can choose in which direction to propagate conflicting changes or choose to rename one of the files in case of conflicts) is too bad, but I'm probably way to geeky to be part of the target audience. ... > Maybe the right answer is to make the rsync-to-server thingy dead stupid > (no incremental backup or anything like that, though maybe it should > ensure each sync is atomic by having two copies) and rely on backing up > the server for getting incrementals and so forth. That certainly sounds like the easiest solution, and not a bad one as far as I can tell. It's not safe to ignore real backups anyways. /Per -- Per Bjornsson <perbj@xxxxxxxxxxxx> Ph.D. Candidate, Department of Applied Physics, Stanford University