forked from pool/unison
Accepting request 26745 from network
Copy from network/unison based on submit request 26745 from user mhopf OBS-URL: https://build.opensuse.org/request/show/26745 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/unison?expand=0&rev=15
This commit is contained in:
parent
08feff5cb5
commit
24d1c20b62
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ec04069e95249a5b4e212ab48ec03820b1e1f707fb4c607e7f98851e98735adc
|
||||
size 674332
|
@ -36,8 +36,8 @@ BLOCKQUOTE{margin-left:4ex;margin-right:4ex;text-align:left;}
|
||||
<BR>
|
||||
<div id="manualheader"><DIV CLASS="center"><FONT SIZE=7><FONT COLOR=black>Unison File Synchronizer</FONT><BR>
|
||||
<FONT SIZE=6><FONT COLOR=black>User Manual and Reference Guide</FONT><BR>
|
||||
<FONT SIZE=5>Version 2.27.157<BR>
|
||||
<FONT SIZE=4>Copyright 1998-2008, Benjamin C. Pierce
|
||||
<FONT SIZE=5>Version 2.32.52<BR>
|
||||
<FONT SIZE=4>Copyright 1998-2009, Benjamin C. Pierce
|
||||
</FONT></FONT></FONT></FONT></DIV></div><BR>
|
||||
<BR>
|
||||
<!--TOC section Contents-->
|
||||
@ -97,13 +97,14 @@ BLOCKQUOTE{margin-left:4ex;margin-right:4ex;text-align:left;}
|
||||
•<A HREF="#perms">Permissions</A><BR>
|
||||
•<A HREF="#crossplatform">Cross-Platform Synchronization</A><BR>
|
||||
•<A HREF="#speed">Slow Links</A><BR>
|
||||
•<A HREF="#speeding">Making Unison Faster on Large Files</A><BR>
|
||||
•<A HREF="#fastcheck">Fast Update Detection</A><BR>
|
||||
•<A HREF="#mountpoints">Mount Points and Removable Media</A><BR>
|
||||
•<A HREF="#click">Click-starting Unison</A><BR>
|
||||
<A HREF="#ssh"><FONT SIZE=4><B>Installing Ssh</B></FONT></A><BR>
|
||||
•<A HREF="#ssh-unix">Unix</A><BR>
|
||||
•<A HREF="#ssh-win">Windows</A><BR>
|
||||
<A HREF="#news"><FONT SIZE=4><B>Changes in Version 2.27.157</B></FONT></A><BR>
|
||||
<A HREF="#news"><FONT SIZE=4><B>Changes in Version 2.32.52</B></FONT></A><BR>
|
||||
|
||||
</BLOCKQUOTE>
|
||||
|
||||
@ -218,7 +219,10 @@ contributed to an even earlier prototype.<BR>
|
||||
Moderated mailing lists are available for bug reporting, announcements
|
||||
of new versions, discussions among users, and discussions among
|
||||
developers. See
|
||||
<A HREF="http://www.cis.upenn.edu/~bcpierce/unison/lists.html"><TT>http://www.cis.upenn.edu/~bcpierce/unison/lists.html</TT></A> for more
|
||||
<BLOCKQUOTE CLASS="quote">
|
||||
<A HREF="http://www.cis.upenn.edu/~bcpierce/unison/lists.html"><TT>http://www.cis.upenn.edu/~bcpierce/unison/lists.html</TT></A>
|
||||
</BLOCKQUOTE>
|
||||
for more
|
||||
information.<BR>
|
||||
<BR>
|
||||
<!--TOC subsection Development Status-->
|
||||
@ -574,7 +578,7 @@ direction that the change needs to be propagated. For example,
|
||||
<--- new file c [f]
|
||||
</PRE>indicates that the file <TT>c</TT> has been modified only in the second
|
||||
replica, and that the default action is therefore to propagate the new
|
||||
version to the first replica. To <B>f</B>ollow Unison's recommendation,
|
||||
version to the first replica. To <B>f</B>ollw Unison's recommendation,
|
||||
press the “f” at the prompt.<BR>
|
||||
<BR>
|
||||
If both replicas are modified and their contents are different, then
|
||||
@ -592,7 +596,7 @@ nothing is shown. Unison simply notes that the file is up to date.<BR>
|
||||
<BR>
|
||||
These display conventions are used by both versions of the user
|
||||
interface. The only difference lies in the way in which Unison's
|
||||
default actions are either accepted or overridden by the user.<BR>
|
||||
default actions are either accepted or overriden by the user.<BR>
|
||||
<BR>
|
||||
<BR>
|
||||
<EM>Textual Interface:</EM><UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
@ -1291,7 +1295,7 @@ A more powerful way of changing archive names is provided by the
|
||||
<CODE>rootalias</CODE> preference. The preference file may contain any number of
|
||||
lines of the form:
|
||||
<PRE>
|
||||
rootalias = //<I>hostnameA</I>//<I>path-to-replicaA</I> -> //<I>hostnameB</I>//<I>path-to-replicaB</I>
|
||||
rootalias = //<I>hostnameA</I>//<I>path-to-replicaA</I> -> //<I>hostnameB</I>/<I>path-to-replicaB</I>
|
||||
</PRE>
|
||||
When calculating the name of the archive files for a given pair of roots,
|
||||
Unison replaces any root that matches the left-hand side of any rootalias
|
||||
@ -1300,8 +1304,11 @@ rule by the corresponding right-hand side.<BR>
|
||||
So, if you need to relocate a root on one of the hosts, you can add a
|
||||
rule of the form:
|
||||
<PRE>
|
||||
rootalias = //<I>new-hostname</I>//<I>new-path</I> -> //<I>old-hostname</I>//<I>old-path</I>
|
||||
rootalias = //<I>new-hostname</I>//<I>new-path</I> -> //<I>old-hostname</I>/<I>old-path</I>
|
||||
</PRE>
|
||||
Note that root aliases are case-sensitive, even on case-insensitive file
|
||||
systems.<BR>
|
||||
<BR>
|
||||
<EM>Warning</EM>: The <CODE>rootalias</CODE> option is dangerous and should only
|
||||
be used if you are sure you know what you're doing. In particular, it
|
||||
should only be used if you are positive that either (1) both the original
|
||||
@ -1348,82 +1355,91 @@ Usage: unison [options]
|
||||
or unison root1 root2 [options]
|
||||
or unison profilename [options]
|
||||
|
||||
Options:
|
||||
-addprefsto xxx file to add new prefs to
|
||||
-addversionno add version number to name of unison executable on server
|
||||
-auto automatically accept default actions
|
||||
-backup xxx add a pattern to the backup list
|
||||
-backupcurrent xxx add a pattern to the backupcurrent list
|
||||
-backupcurrentnot xxx add a pattern to the backupcurrentnot list
|
||||
-backupdir xxx Directory for storing centralized backups
|
||||
-backuplocation xxx where backups are stored ('local' or 'central')
|
||||
-backupnot xxx add a pattern to the backupnot list
|
||||
-backupprefix xxx prefix for the names of backup files
|
||||
-backups keep backup copies of all files (see also 'backup')
|
||||
-backupsuffix xxx a suffix to be added to names of backup files
|
||||
-batch batch mode: ask no questions at all
|
||||
-confirmbigdeletes request confirmation for whole-replica deletes
|
||||
-confirmmerge ask for confirmation before commiting results of a merge
|
||||
-contactquietly Suppress the 'contacting server' message during startup
|
||||
-debug xxx debug module xxx ('all' -> everything, 'verbose' -> more)
|
||||
-doc xxx show documentation ('-doc topics' lists topics)
|
||||
-dumbtty do not try to change terminal settings in text UI
|
||||
-fastcheck xxx do fast update detection (`true', `false', or `default')
|
||||
-follow xxx add a pattern to the follow list
|
||||
-force xxx force changes from this replica to the other
|
||||
-forcepartial xxx add a pattern to the forcepartial list
|
||||
-group synchronize group
|
||||
-height n height (in lines) of main window in graphical interface
|
||||
-host xxx bind the socket to this host name in server socket mode
|
||||
-ignore xxx add a pattern to the ignore list
|
||||
-ignorecase xxx ignore upper/lowercase in filenames (`true', `false', or `default')
|
||||
-ignorelocks ignore locks left over from previous run (dangerous!)
|
||||
-ignorenot xxx add a pattern to the ignorenot list
|
||||
-immutable xxx add a pattern to the immutable list
|
||||
-immutablenot xxx add a pattern to the immutablenot list
|
||||
-key xxx define a keyboard shortcut for this profile (in some UIs)
|
||||
-killserver kill server when done (even when using sockets)
|
||||
-label xxx provide a descriptive string label for this profile
|
||||
-log record actions in file specified by logfile preference
|
||||
-logfile xxx Log file name
|
||||
-maxbackups n number of backed up versions of a file
|
||||
-maxthreads n maximum number of simultaneous file transfers
|
||||
-merge xxx add a pattern to the merge list
|
||||
-mountpoint xxx abort if this path does not exist
|
||||
-numericids don't map uid/gid values by user/group names
|
||||
-owner synchronize owner
|
||||
-path xxx path to synchronize
|
||||
-perms n part of the permissions which is synchronized
|
||||
-prefer xxx choose this replica's version for conflicting changes
|
||||
-preferpartial xxx add a pattern to the preferpartial list
|
||||
-pretendwin Use creation times for detecting updates
|
||||
-repeat xxx synchronize repeatedly (text interface only)
|
||||
-retry n re-try failed synchronizations N times (text interface only)
|
||||
-root xxx root of a replica
|
||||
-rootalias xxx Register alias for canonical root names
|
||||
-rsrc xxx synchronize resource forks and HFS meta-data (`true', `false', or `default')
|
||||
-rsync activate the rsync transfer mode
|
||||
-selftest run internal tests and exit
|
||||
-servercmd xxx name of unison executable on remote server
|
||||
-showarchive show name of archive and 'true names' (for rootalias) of roots
|
||||
-silent print nothing (except error messages)
|
||||
-socket xxx act as a server on a socket
|
||||
-sortbysize list changed files by size, not name
|
||||
-sortfirst xxx add a pattern to the sortfirst list
|
||||
-sortlast xxx add a pattern to the sortlast list
|
||||
-sortnewfirst list new before changed files
|
||||
-sshargs xxx other arguments (if any) for remote shell command
|
||||
-sshcmd xxx path to the ssh executable
|
||||
-terse suppress status messages
|
||||
-testserver exit immediately after the connection to the server
|
||||
-times synchronize modification times
|
||||
-ui xxx select user interface ('text' or 'graphic'); command-line only
|
||||
-version print version and exit
|
||||
-xferbycopying optimize transfers using local copies, if possible
|
||||
Basic options:
|
||||
-auto automatically accept default (nonconflicting) actions
|
||||
-batch batch mode: ask no questions at all
|
||||
-doc xxx show documentation ('-doc topics' lists topics)
|
||||
-follow xxx add a pattern to the follow list
|
||||
-force xxx force changes from this replica to the other
|
||||
-group synchronize group attributes
|
||||
-ignore xxx add a pattern to the ignore list
|
||||
-ignorenot xxx add a pattern to the ignorenot list
|
||||
-owner synchronize owner
|
||||
-path xxx path to synchronize
|
||||
-perms n part of the permissions which is synchronized
|
||||
-prefer xxx choose this replica's version for conflicting changes
|
||||
-root xxx root of a replica (should be used exactly twice)
|
||||
-silent print nothing except error messages
|
||||
-terse suppress status messages
|
||||
-testserver exit immediately after the connection to the server
|
||||
-times synchronize modification times
|
||||
-version print version and exit
|
||||
|
||||
Advanced options:
|
||||
-addprefsto xxx file to add new prefs to
|
||||
-addversionno add version number to name of unison on server
|
||||
-backup xxx add a pattern to the backup list
|
||||
-backupcurr xxx add a pattern to the backupcurr list
|
||||
-backupcurrnot xxx add a pattern to the backupcurrnot list
|
||||
-backupdir xxx directory for storing centralized backups
|
||||
-backuploc xxx where backups are stored ('local' or 'central')
|
||||
-backupnot xxx add a pattern to the backupnot list
|
||||
-backupprefix xxx prefix for the names of backup files
|
||||
-backups keep backup copies of all files (see also 'backup')
|
||||
-backupsuffix xxx a suffix to be added to names of backup files
|
||||
-confirmbigdel ask about whole-replica (or path) deletes (default true)
|
||||
-confirmmerge ask for confirmation before commiting results of a merge
|
||||
-contactquietly suppress the 'contacting server' message during startup
|
||||
-copyprog xxx external program for copying large files
|
||||
-copyprogrest xxx variant of copyprog for resuming partial transfers
|
||||
-copyquoterem xxx add quotes to remote file name for copyprog (true/false/default)
|
||||
-copythreshold n use copyprog on files bigger than this (if >=0, in Kb)
|
||||
-debug xxx debug module xxx ('all' -> everything, 'verbose' -> more)
|
||||
-diff xxx command for showing differences between files
|
||||
-dontchmod When set, never use the chmod system call
|
||||
-dumbtty do not change terminal settings in text UI (default true)
|
||||
-fastcheck xxx do fast update detection (true/false/default)
|
||||
-forcepartial xxx add a pattern to the forcepartial list
|
||||
-height n height (in lines) of main window in graphical interface
|
||||
-host xxx bind the socket to this host name in server socket mode
|
||||
-ignorecase xxx identify upper/lowercase filenames (true/false/default)
|
||||
-ignorelocks ignore locks left over from previous run (dangerous!)
|
||||
-immutable xxx add a pattern to the immutable list
|
||||
-immutablenot xxx add a pattern to the immutablenot list
|
||||
-key xxx define a keyboard shortcut for this profile (in some UIs)
|
||||
-killserver kill server when done (even when using sockets)
|
||||
-label xxx provide a descriptive string label for this profile
|
||||
-log record actions in logfile (default true)
|
||||
-logfile xxx logfile name
|
||||
-maxbackups n number of backed up versions of a file
|
||||
-maxthreads n maximum number of simultaneous file transfers
|
||||
-merge xxx add a pattern to the merge list
|
||||
-mountpoint xxx abort if this path does not exist
|
||||
-numericids don't map uid/gid values by user/group names
|
||||
-preferpartial xxx add a pattern to the preferpartial list
|
||||
-pretendwin Use creation times for detecting updates
|
||||
-repeat xxx synchronize repeatedly (text interface only)
|
||||
-retry n re-try failed synchronizations N times (text ui only)
|
||||
-rootalias xxx register alias for canonical root names
|
||||
-rsrc xxx synchronize resource forks (true/false/default)
|
||||
-rsync activate the rsync transfer mode (default true)
|
||||
-selftest run internal tests and exit
|
||||
-servercmd xxx name of unison executable on remote server
|
||||
-showarchive show 'true names' (for rootalias) of roots and archive
|
||||
-socket xxx act as a server on a socket
|
||||
-sortbysize list changed files by size, not name
|
||||
-sortfirst xxx add a pattern to the sortfirst list
|
||||
-sortlast xxx add a pattern to the sortlast list
|
||||
-sortnewfirst list new before changed files
|
||||
-sshargs xxx other arguments (if any) for remote shell command
|
||||
-sshcmd xxx path to the ssh executable
|
||||
-ui xxx select UI ('text' or 'graphic'); command-line only
|
||||
-xferbycopying optimize transfers using local copies (default true)
|
||||
|
||||
</PRE>
|
||||
</BLOCKQUOTE>
|
||||
Here, in more detail, are what they do. Many are discussed in even greater
|
||||
detail in other sections of the manual.
|
||||
Here, in more detail, is what they do. Many are discussed in greater detail
|
||||
in other sections of the manual.
|
||||
<DL CLASS="description" COMPACT=compact><DT CLASS="dt-description">
|
||||
<B>addprefsto <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
By default, new preferences added by Unison (e.g., new <CODE>ignore</CODE> clauses) will be appended to whatever preference file Unison was told to load at the beginning of the run. Setting the preference <TT>addprefsto <I>filename</I></TT> makes Unison add new preferences to the file named <TT><I>filename</I></TT> instead.<BR>
|
||||
@ -1439,25 +1455,27 @@ Including the preference <TT>-backup <I>pathspec</I></TT> causes Unison to keep
|
||||
<BR>
|
||||
The syntax of <TT><I>pathspec</I></TT> is described in the <A HREF="#pathspec">Path Specification</A> section.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backupcurrent <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
Including the preference <TT>-backupcurrent <I>pathspec</I></TT> causes Unison to keep a backup of the <EM>current</EM> version of every file matching <TT><I>pathspec</I></TT>. This file will be saved as a backup with version number 000. Such backups can be used as inputs to external merging programs, for instance. See the documentatation for the <CODE>merge</CODE> preference. For more details, see the <A HREF="#merge">Merging Conflicting Versions</A> section.<BR>
|
||||
<DT CLASS="dt-description"><B>backupcurr <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
Including the preference <TT>-backupcurr <I>pathspec</I></TT> causes Unison to keep a backup of the <EM>current</EM> version of every file matching <TT><I>pathspec</I></TT>. This file will be saved as a backup with version number 000. Such backups can be used as inputs to external merging programs, for instance. See the documentatation for the <CODE>merge</CODE> preference. For more details, see the <A HREF="#merge">Merging Conflicting Versions</A> section.<BR>
|
||||
<BR>
|
||||
The syntax of <TT><I>pathspec</I></TT> is described in the <A HREF="#pathspec">Path Specification</A> section.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backupcurrentnot <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
Exceptions to <CODE>backupcurrent</CODE>, like the <CODE>ignorenot</CODE> preference.<BR>
|
||||
<DT CLASS="dt-description"><B>backupcurrnot <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
Exceptions to <CODE>backupcurr</CODE>, like the <CODE>ignorenot</CODE> preference.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backupdir <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
If this preference is set, Unison will use it as the name of the directory used to store backup files specified by the <TT>backup</TT> preference, when <TT>backuplocation</TT> is set to <CODE>central</CODE>. It is checked <EM>after</EM> the <TT>UNISONBACKUPDIR</TT> environment variable.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backuplocation <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
<DT CLASS="dt-description"><B>backuploc <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
This preference determines whether backups should be kept locally, near the original files, or in a central directory specified by the <TT>backupdir</TT> preference. If set to <CODE>local</CODE>, backups will be kept in the same directory as the original files, and if set to <CODE>central</CODE>, <TT>backupdir</TT> will be used instead.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backupnot <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
The values of this preference specify paths or individual files or regular expressions that should <EM>not</EM> be backed up, even if the <TT>backup</TT> preference selects them—i.e., it selectively overrides <TT>backup</TT>. The same caveats apply here as with <TT>ignore</TT> and t ignorenot.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backupprefix <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
When a backup for a file <CODE>NAME</CODE> is created, it is stored in a directory specified by <TT>backuplocation</TT>, in a file called <TT>backupprefix</TT><CODE>NAME</CODE><TT>backupsuffix</TT>. <TT>backupprefix</TT> can include a directory name (causing Unison to keep all backup files for a given directory in a subdirectory with this name), and both <TT>backupprefix</TT> and <TT>backupsuffix</TT> can contain the string<TT><I>$VERSION</I></TT>, which will be replaced by the <EM>age</EM> of the backup (1 for the most recent, 2 for the second most recent, and so on...). This keyword is ignored if it appears in a directory name in the prefix; if it does not appear anywhere in the prefix or the suffix, it will be automatically placed at the beginning of the suffix.<BR>
|
||||
When a backup for a file <CODE>NAME</CODE> is created, it is stored in a directory specified by <TT>backuplocation</TT>, in a file called <TT>backupprefix</TT><CODE>NAME</CODE><TT>backupsuffix</TT>. <TT>backupprefix</TT> can include a directory name (causing Unison to keep all backup files for a given directory in a subdirectory with this name), and both <TT>backupprefix</TT> and <TT>backupsuffix</TT> can contain the string<TT><I>$VERSION</I></TT>, which will be replaced by the <EM>age</EM> of the backup (1 for the most recent, 2 for the second most recent, and so on...). This keyword is ignored if it appears in a directory name in the prefix; if it does not appear anywhere in the prefix or the suffix, it will be automatically placed at the beginning of the suffix. <BR>
|
||||
<BR>
|
||||
One thing to be careful of: If the <TT>backuploc</TT> preference is set to <TT>local</TT>, Unison will automatically ignore <EM>all</EM> files whose prefix and suffix match <TT>backupprefix</TT> and <TT>backupsuffix</TT>. So be careful to choose values for these preferences that are sufficiently different from the names of your real files.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>backups </B><DD CLASS="dd-description">
|
||||
Setting this flag to true is equivalent to setting <TT>backuplocation</TT> to <TT>local</TT> and <TT>backup</TT> to <CODE>Name *</CODE>.<BR>
|
||||
@ -1468,15 +1486,27 @@ See <TT>backupprefix</TT> for full documentation.<BR>
|
||||
<DT CLASS="dt-description"><B>batch </B><DD CLASS="dd-description">
|
||||
When this is set to <TT>true</TT>, the user interface will ask no questions at all. Non-conflicting changes will be propagated; conflicts will be skipped.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>confirmbigdeletes </B><DD CLASS="dd-description">
|
||||
When this is set to <TT>true</TT>, Unison will request an extra confirmation if it appears that the entire replica has been deleted, before propagating the change. If the <TT>batch</TT> flag is also set, synchronization will be aborted. When the <TT>path</TT> preference is used, the same confirmation will be requested for top-level paths. (At the moment, this flag only affects the text user interface.) See also the <TT>mountpoint</TT> preference.<BR>
|
||||
<DT CLASS="dt-description"><B>confirmbigdel </B><DD CLASS="dd-description">
|
||||
!When this is set to <TT>true</TT>, Unison will request an extra confirmation if it appears that the entire replica has been deleted, before propagating the change. If the <TT>batch</TT> flag is also set, synchronization will be aborted. When the <TT>path</TT> preference is used, the same confirmation will be requested for top-level paths. (At the moment, this flag only affects the text user interface.) See also the <TT>mountpoint</TT> preference.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>confirmmerge </B><DD CLASS="dd-description">
|
||||
Setting this preference causes both the text and graphical interfaces to ask the user if the results of a merge command may be commited to the replica or not. Since the merge command works on temporary files, the user can then cancel all the effects of applying the merge if it turns out that the result is not satisfactory. In batch-mode, this preference has no effect.<BR>
|
||||
Setting this preference causes both the text and graphical interfaces to ask the user if the results of a merge command may be commited to the replica or not. Since the merge command works on temporary files, the user can then cancel all the effects of applying the merge if it turns out that the result is not satisfactory. In batch-mode, this preference has no effect. Default is false.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>contactquietly </B><DD CLASS="dd-description">
|
||||
If this flag is set, Unison will skip displaying the `Contacting server' message (which some users find annoying) during startup.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>copyprog <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
A string giving the name of an external program that can be used to copy large files efficiently (plus command-line switches telling it to copy files in-place). The default setting invokes <TT>rsync</TT> with appropriate options—most users should not need to change it.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>copyprogrest <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
A variant of <TT>copyprog</TT> that names an external program that should be used to continue the transfer of a large file that has already been partially transferred. Typically, <TT>copyprogrest</TT> will just be <TT>copyprog</TT> with one extra option (e.g., <TT>–partial</TT>, for rsync). The default setting invokes <TT>rsync</TT> with appropriate options—most users should not need to change it.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>copyquoterem <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
When set to <TT>true</TT>, this flag causes Unison to add an extra layer of quotes to the remote path passed to the external copy program. This is needed by rsync, for example, which internally uses an ssh connection requiring an extra level of quoting for paths containing spaces. When this flag is set to <TT>default</TT>, extra quotes are added if the value of <TT>copyprog</TT> contains the string <TT>rsync</TT>.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>copythreshold <TT>n</TT></B><DD CLASS="dd-description">
|
||||
A number indicating above what filesize (in kilobytes) Unison should use the external copying utility specified by <TT>copyprog</TT>. Specifying 0 will cause <EM>all</EM> copies to use the external program; a negative number will prevent any files from using it. The default is -1. See the <A HREF="#speeding">Making Unison Faster on Large Files</A> section for more information.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>debug <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
This preference is used to make Unison print various sorts of information about what it is doing internally on the standard error stream. It can be used many times, each time with the name of a module for which debugging information should be printed. Possible arguments for <CODE>debug</CODE> can be found by looking for calls to <CODE>Util.debug</CODE> in the sources (using, e.g., <CODE>grep</CODE>). Setting <CODE>-debug all</CODE> causes information from <EM>all</EM> modules to be printed (this mode of usage is the first one to try, if you are trying to understand something that Unison seems to be doing wrong); <CODE>-debug verbose</CODE> turns on some additional debugging output from some modules (e.g., it will show exactly what bytes are being sent across the network).<BR>
|
||||
<BR>
|
||||
@ -1486,6 +1516,9 @@ This preference can be used to control the name and command-line arguments of th
|
||||
<DT CLASS="dt-description"><B>doc <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
The command-line argument <TT>-doc <I>secname</I></TT> causes unison to display section <TT><I>secname</I></TT> of the manual on the standard output and then exit. Use <CODE>-doc all</CODE> to display the whole manual, which includes exactly the same information as the printed and HTML manuals, modulo formatting. Use <CODE>-doc topics</CODE> to obtain a list of the names of the various sections that can be printed.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>dontchmod </B><DD CLASS="dd-description">
|
||||
By default, Unison uses the 'chmod' system call to set the permission bits of files after it has copied them. But in some circumstances (and under some operating systems), the chmod call always fails. Setting this preference completely prevents Unison from ever calling chmod.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>dumbtty </B><DD CLASS="dd-description">
|
||||
When set to <CODE>true</CODE>, this flag makes the text mode user interface avoid trying to change any of the terminal settings. (Normally, Unison puts the terminal in `raw mode', so that it can do things like overwriting the current line.) This is useful, for example, when Unison runs in a shell inside of Emacs. <BR>
|
||||
<BR>
|
||||
@ -1522,7 +1555,7 @@ This preference should be used only if you are <EM>sure</EM> you know what you a
|
||||
<DT CLASS="dt-description"><B>group </B><DD CLASS="dd-description">
|
||||
When this flag is set to <CODE>true</CODE>, the group attributes of the files are synchronized. Whether the group names or the group identifiers are synchronizeddepends on the preference <TT>numerids</TT>.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>height <TT>n </TT></B><DD CLASS="dd-description">
|
||||
<DT CLASS="dt-description"><B>height <TT>n</TT></B><DD CLASS="dd-description">
|
||||
Used to set the height (in lines) of the main window in the graphical user interface.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>ignore <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
@ -1532,7 +1565,7 @@ Including the preference <TT>-ignore <I>pathspec</I></TT> causes Unison to compl
|
||||
When set to <TT>true</TT>, this flag causes Unison to treat filenames as case insensitive—i.e., files in the two replicas whose names differ in (upper- and lower-case) `spelling' are treated as the same file. When the flag is set to <TT>false</TT>, Unison will treat all filenames as case sensitive. Ordinarily, when the flag is set to <TT>default</TT>, filenames are automatically taken to be case-insensitive if either host is running Windows or OSX. In rare circumstances it is useful to set the flag manually (e.g. when running Unison on a Unix system with a FAT [Windows] volume mounted).<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>ignorelocks </B><DD CLASS="dd-description">
|
||||
When this preference is set, Unison will ignore any lock files that may have been left over from a previous run of Unison that was interrupted while reading or writing archive files; by default, when Unison sees these lock files it will stop and request manualintervention. This option should be set only if you are <EM>positive</EM> that no other instance of Unison might be concurrently accessing the same archive files (e.g., because there was only one instance of unison running and it has just crashed or you have just killed it). It is probably not a good idea to set this option in a profile: it is intended for command-line use.<BR>
|
||||
When this preference is set, Unison will ignore any lock files that may have been left over from a previous run of Unison that was interrupted while reading or writing archive files; by default, when Unison sees these lock files it will stop and request manual intervention. This option should be set only if you are <EM>positive</EM> that no other instance of Unison might be concurrently accessing the same archive files (e.g., because there was only one instance of unison running and it has just crashed or you have just killed it). It is probably not a good idea to set this option in a profile: it is intended for command-line use.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>ignorenot <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
This preference overrides the preference <TT>ignore</TT>.
|
||||
@ -1579,10 +1612,10 @@ By default, logging messages will be appended to the file
|
||||
<CODE>unison.log</CODE> in your HOME directory. Set this preference if
|
||||
you prefer another file.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>maxbackups <TT>n </TT></B><DD CLASS="dd-description">
|
||||
<DT CLASS="dt-description"><B>maxbackups <TT>n</TT></B><DD CLASS="dd-description">
|
||||
This preference specifies the number of backup versions that will be kept by unison, for each path that matches the predicate <CODE>backup</CODE>. The default is 2.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>maxthreads <TT>n </TT></B><DD CLASS="dd-description">
|
||||
<DT CLASS="dt-description"><B>maxthreads <TT>n</TT></B><DD CLASS="dd-description">
|
||||
This preference controls how much concurrency is allowed during the transport phase. Normally, it should be set reasonably high (default is 20) to maximize performance, but when Unison is used over a low-bandwidth link it may be helpful to set it lower (e.g. to 1) so that Unison doesn't soak up all the available bandwidth.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>merge <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
@ -1602,7 +1635,7 @@ When this flag is set to <CODE>true</CODE>, the owner attributes of the files ar
|
||||
<DT CLASS="dt-description"><B>path <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
When no <CODE>path</CODE> preference is given, Unison will simply synchronize the two entire replicas, beginning from the given pair of roots. If one or more <CODE>path</CODE> preferences are given, then Unison will synchronize only these paths and their children. (This is useful for doing a fast sync of just one directory, for example.) Note that <TT>path</TT> preferences are intepreted literally—they are not regular expressions.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>perms <TT>n </TT></B><DD CLASS="dd-description">
|
||||
<DT CLASS="dt-description"><B>perms <TT>n</TT></B><DD CLASS="dd-description">
|
||||
The integer value of this preference is a mask indicating which permission bits should be synchronized. It is set by default to 0<I>o</I>1777: all bits but the set-uid and set-gid bits are synchronised (synchronizing theses latter bits can be a security hazard). If you want to synchronize all bits, you can set the value of this preference to −1.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>prefer <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
@ -1623,7 +1656,7 @@ When set to true, this preference makes Unison use Windows-style fast update det
|
||||
<DT CLASS="dt-description"><B>repeat <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
Setting this preference causes the text-mode interface to synchronize repeatedly, rather than doing it just once and stopping. If the argument is a number, Unison will pause for that many seconds before beginning again.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>retry <TT>n </TT></B><DD CLASS="dd-description">
|
||||
<DT CLASS="dt-description"><B>retry <TT>n</TT></B><DD CLASS="dd-description">
|
||||
Setting this preference causes the text-mode interface to try again to synchronize updated paths where synchronization fails. Each such path will be tried N times.<BR>
|
||||
<BR>
|
||||
<DT CLASS="dt-description"><B>root <TT>xxx</TT></B><DD CLASS="dd-description">
|
||||
@ -2382,6 +2415,59 @@ If you are using Unison with <TT>ssh</TT>, you may get some speed
|
||||
improvement by enabling <TT>ssh</TT>'s compression feature. Do this by
|
||||
adding the option “<TT>-rshargs -C</TT>” to the command line or “<TT>rshargs = -C</TT>” to your profile. <BR>
|
||||
<BR>
|
||||
<!--TOC subsection Making Unison Faster on Large Files-->
|
||||
|
||||
<H3 CLASS="subsection"><A NAME="speeding"></A>Making Unison Faster on Large Files</H3><!--SEC END -->
|
||||
|
||||
Unison's built-in implementation of the rsync algorithm makes transferring
|
||||
updates to existing files pretty fast. However, for whole-file copies of
|
||||
newly created files, the built-in transfer method is not highly optimized.
|
||||
Also, if Unison is interrupted in the middle of transferring a large file,
|
||||
it will attempt to retransfer the whole thing on the next run.<BR>
|
||||
<BR>
|
||||
These shortcomings can be addressed with a little extra work by telling
|
||||
Unison to use an external file copying utility for whole-file transfers.
|
||||
The recommended one is the standalone <TT>rsync</TT> tool, which is available
|
||||
by default on most Unix systems and can easily be installed on Windows
|
||||
systems using Cygwin.<BR>
|
||||
<BR>
|
||||
If you have <TT>rsync</TT> installed on both hosts, you can make Unison use it
|
||||
simply by setting the <TT>copythreshold</TT> flag to something non-negative.
|
||||
If you set it to 0, Unison will use the external copy utility for <EM>all</EM>
|
||||
whole-file transfers. (This is probably slower than letting Unison copy
|
||||
small files by itself, but can be useful for testing.) If you set it to a
|
||||
larger value, Unison will use the external utility for all files larger than
|
||||
this size (which is given in kilobytes, so setting it to 1000 will cause the
|
||||
external tool to be used for all transfers larger than a megabyte).<BR>
|
||||
<BR>
|
||||
If you want to use a different external copy utility, set both the <TT>copyprog</TT> and <TT>copyprogpartial</TT> preferences—the former is used for
|
||||
the first transfer of a file, while the latter is used when Unison sees a
|
||||
partially transferred temp file on the receiving host. Be careful here:
|
||||
Your external tool needs to be instructed to copy files in place (otherwise
|
||||
if the transfer is interrupted Unison will not notice that some of the data
|
||||
has already been transferred, the next time it tries). The default values
|
||||
are:
|
||||
<PRE CLASS="verbatim">
|
||||
copyprog = rsync --inplace --compress
|
||||
copyprogrest = rsync --partial --inplace --compress
|
||||
</PRE>You may also need to set the <TT>copyquoterem</TT> preference. When it is set
|
||||
to <TT>true</TT>, this causes Unison to add an extra layer of quotes to
|
||||
the remote path passed to the external copy program. This is is needed by
|
||||
rsync, for example, which internally uses an ssh connection, requiring an
|
||||
extra level of quoting for paths containing spaces. When this flag is set to
|
||||
<TT>default</TT>, extra quotes are added if the value of <TT>copyprog</TT>
|
||||
contains the string <TT>rsync</TT>. The default value is <TT>default</TT>,
|
||||
naturally.<BR>
|
||||
<BR>
|
||||
If a <EM>directory</EM> transfer is interrupted, the next run of Unison will
|
||||
automatically skip any files that were completely transferred before the
|
||||
interruption. (This behavior is always on: it does not depend on the
|
||||
setting of the <TT>copythreshold</TT> preference.) Note, though, that the new
|
||||
directory will not appear in the destination filesystem until everything has
|
||||
been transferred—partially transferred directories are kept in a temporary
|
||||
location (with names like <TT>.unison.DIRNAME....</TT>) until the transfer is
|
||||
complete.<BR>
|
||||
<BR>
|
||||
<!--TOC subsection Fast Update Detection-->
|
||||
|
||||
<H3 CLASS="subsection"><A NAME="fastcheck"></A>Fast Update Detection</H3><!--SEC END -->
|
||||
@ -2577,14 +2663,21 @@ you have trouble, you might try this one instead:
|
||||
hosts, provide your remote user name when providing the remote root
|
||||
(i.e., <CODE>//username@host/path...</CODE>).
|
||||
</OL>
|
||||
<hr><!--TOC section Changes in Version 2.27.157-->
|
||||
<hr><!--TOC section Changes in Version 2.32.52-->
|
||||
|
||||
<H2 CLASS="section"><A NAME="news"></A>Changes in Version 2.27.157</H2><!--SEC END -->
|
||||
<H2 CLASS="section"><A NAME="news"></A>Changes in Version 2.32.52</H2><!--SEC END -->
|
||||
|
||||
Changes since 2.27.57:
|
||||
Changes since 2.32.44:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
|
||||
Ignore one hour differences for deciding whether a file may have
|
||||
Improvement to the code for resuming directory transfers:
|
||||
(1) make sure file information (permissions, ...) has been properly set
|
||||
when using a previously transferred temp file
|
||||
(2) make sure previously transferred directories are writable
|
||||
(other changes made in the developer version of Unison require a
|
||||
protocol change)
|
||||
<LI CLASS="li-itemize">Got rid of the 16MiB marshalling limit by marshalling to a bigarray
|
||||
<LI CLASS="li-itemize">Ignore one hour differences for deciding whether a file may have
|
||||
been updated. This avoids slow update detection after daylight
|
||||
saving time changes under Windows. This makes it slightly more
|
||||
likely to miss an update, but that should be safe enough.
|
||||
@ -2605,6 +2698,15 @@ Ignore one hour differences for deciding whether a file may have
|
||||
helpful about suggesting a workaround (running once with 'fastcheck'
|
||||
set to false). The failure message has been changed to give this
|
||||
advice.
|
||||
<LI CLASS="li-itemize">Text UI
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
During update detection, display status by updating a
|
||||
single line rather than generating a new line of output every so
|
||||
often. That should be less confusing.
|
||||
<LI CLASS="li-itemize">In repeat mode, don't save the archives when there is no
|
||||
update. Indeed, in this mode, we should minimize the amount of work
|
||||
performed and it is unlikely that the archives have changed much.
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Bugfixes
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Fixed quotation of paths and names when writing to a preference file
|
||||
@ -2629,39 +2731,159 @@ label. Fix contributed by Pedro Melo.
|
||||
|
||||
</UL>
|
||||
|
||||
Changes since 2.31:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
|
||||
Minor fixes and improvements:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Ignore one hour differences when deciding whether a file may have
|
||||
been updated. This avoids slow update detection after daylight
|
||||
saving time changes under Windows. This makes Unison slightly more
|
||||
likely to miss an update, but it should be safe enough.
|
||||
<LI CLASS="li-itemize">Fix a small bug that was affecting mainly windows users. We need to
|
||||
commit the archives at the end of the sync even if there are no
|
||||
updates to propagate because some files (in fact, if we've just
|
||||
switched to DST on windows, a LOT of files) might have new modtimes
|
||||
in the archive. (Changed the text UI only. It's less clear where
|
||||
to change the GUI.)
|
||||
<LI CLASS="li-itemize">Don't delete the temp file when a transfer fails due to a
|
||||
fingerprint mismatch (so that we can have a look and see why!) We've also
|
||||
added more debugging code togive more informative error messages when we
|
||||
encounter the dreaded and longstanding "assert failed during file
|
||||
transfer" bug
|
||||
</UL>
|
||||
|
||||
</UL>
|
||||
|
||||
Changes since 2.27:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
|
||||
If Unison is interrupted during a directory transfer, it will now
|
||||
leave the partially transferred directory intact in a temporary
|
||||
location. (This maintains the invariant that new files/directories are
|
||||
transferred either completely or not at all.) The next time Unison is run,
|
||||
it will continue filling in this temporary directory, skipping transferring
|
||||
files that it finds are already there.
|
||||
<LI CLASS="li-itemize">We've added experimental support for invoking an external file
|
||||
transfer tool for whole-file copies instead of Unison's built-in transfer
|
||||
protocol. Three new preferences have been added:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
<TT>copyprog</TT> is a string giving the name (and command-line
|
||||
switches, if needed) of an external program that can be used to copy large
|
||||
files efficiently. By default, rsync is invoked, but other tools such as
|
||||
scp can be used instead by changing the value of this preference. (Although
|
||||
this is not its primary purpose, rsync is actually a pretty fast way of
|
||||
copying files that don't already exist on the receiving host.) For files
|
||||
that do already exist on (but that have been changed in one replica), Unison
|
||||
will always use its built-in implementation of the rsync algorithm.
|
||||
<LI CLASS="li-itemize">Added a "copyprogrest" preference, so that we can give different
|
||||
command lines for invoking the external copy utility depending on whether a
|
||||
partially transferred file already exists or not. (Rsync doesn't seem to
|
||||
care about this, but other utilities may.)
|
||||
<LI CLASS="li-itemize"><TT>copythreshold</TT> is an integer (-1 by default), indicating above what
|
||||
filesize (in megabytes) Unison should use the external copying utility
|
||||
specified by copyprog. Specifying 0 will cause ALL copies to use the
|
||||
external program; a negative number will prevent any files from using it.
|
||||
(Default is -1.)
|
||||
</UL>
|
||||
Thanks to Alan Schmitt for a huge amount of hacking and to an anonymous
|
||||
sponsor for suggesting and underwriting this extension.
|
||||
<LI CLASS="li-itemize">Small improvements:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Added a new preference, <TT>dontchmod</TT>. By default, Unison uses the
|
||||
<TT>chmod</TT> system call to set the permission bits of files after it has
|
||||
copied them. But in some circumstances (and under some operating systems),
|
||||
the chmod call always fails. Setting this preference completely prevents
|
||||
Unison from ever calling <TT>chmod</TT>.
|
||||
<LI CLASS="li-itemize">Don't ignore files that look like backup files if the <TT>backuplocation</TT> preference is set to <TT>central</TT>
|
||||
<LI CLASS="li-itemize">Shortened the names of several preferences. The old names are also
|
||||
still supported, for backwards compatibility, but they do not appear in the
|
||||
documentation.
|
||||
<LI CLASS="li-itemize">Lots of little documentation tidying. (In particular, preferences are
|
||||
separated into Basic and Advanced! This should hopefully make Unison a
|
||||
little more approachable for new users.
|
||||
<LI CLASS="li-itemize">Unison can sometimes fail to transfer a file, giving the unhelpful
|
||||
message "Destination updated during synchronization" even though the file
|
||||
has not been changed. This can be caused by programs that change either the
|
||||
file's contents <EM>or</EM> the file's extended attributes without changing
|
||||
its modification time. It's not clear what is the best fix for this – it
|
||||
is not Unison's fault, but it makes Unison's behavior puzzling – but at
|
||||
least Unison can be more helpful about suggesting a workaround (running once
|
||||
with <TT>fastcheck</TT> set to false). The failure message has been changed to
|
||||
give this advice.
|
||||
<LI CLASS="li-itemize">Further improvements to the OS X GUI (thanks to Alan Schmitt and Craig
|
||||
Federighi).
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">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 improve it (e.g.,
|
||||
by writing a filesystem watcher for your favorite OS), please make
|
||||
yourself known!<BR>
|
||||
<BR>
|
||||
On the Unison side, the new behavior is very simple:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
use the text UI
|
||||
<LI CLASS="li-itemize">start Unison with the command-line flag "-repeat FOO",
|
||||
where FOO is name of a file where Unison should look
|
||||
for notifications of changes
|
||||
<LI CLASS="li-itemize">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
|
||||
<LI CLASS="li-itemize">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
|
||||
<LI CLASS="li-itemize">that's it!
|
||||
</UL>
|
||||
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.
|
||||
<LI CLASS="li-itemize">Bug fixes:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Fixed a bug that was causing new files to be created with
|
||||
permissions 0x600 instead of using a reasonable default (like
|
||||
0x644), if the 'perms' flag was set to 0. (Bug reported by Ben
|
||||
Crowell.)
|
||||
<LI CLASS="li-itemize">Follow maxthreads preference when transferring directories.
|
||||
</UL>
|
||||
|
||||
</UL>
|
||||
|
||||
Changes since 2.17:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
|
||||
Major rewrite and cleanup of the whole Mac OS X graphical user
|
||||
interface by Craig Federighi. Thanks, Craig!!!<BR>
|
||||
<BR>
|
||||
interface by Craig Federighi. Thanks, Craig!!!
|
||||
<LI CLASS="li-itemize">Small fix to ctime (non-)handling in update detection under windows
|
||||
with fastcheck.
|
||||
<LI CLASS="li-itemize">Several small fixes to the GTK2 UI to make it work better under
|
||||
Windows [thanks to Karl M for these].<BR>
|
||||
<BR>
|
||||
Windows [thanks to Karl M for these].
|
||||
<LI CLASS="li-itemize">The backup functionality has been completely rewritten. The external
|
||||
interface has not changed, but numerous bugs, irregular behaviors, and
|
||||
cross-platform inconsistencies have been corrected.<BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">The Unison project now accepts donations via PayPal. You can find a
|
||||
link to the donation page on the
|
||||
cross-platform inconsistencies have been corrected.
|
||||
<LI CLASS="li-itemize">The Unison project now accepts donations via PayPal. If you'd like to
|
||||
donate, you can find a link to the donation page on the
|
||||
<A HREF="http://www.cis.upenn.edu/ bcpierce/unison/lists.html">Unison home
|
||||
page</A>.<BR>
|
||||
<BR>
|
||||
page</A>.
|
||||
<LI CLASS="li-itemize">Some important safety improvements:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Added a new <CODE>mountpoint</CODE> preference, which can be used to specify
|
||||
a path that must exist in both replicas at the end of update detection
|
||||
(otherwise Unison aborts). This can be used to avoid potentially dangerous
|
||||
situations when Unison is used with removable media such as external hard
|
||||
drives and compact flash cards. <BR>
|
||||
<BR>
|
||||
drives and compact flash cards.
|
||||
<LI CLASS="li-itemize">The confirmation of “big deletes” is now controlled by a boolean preference
|
||||
<CODE>confirmbigdeletes</CODE>. Default is true, which gives the same behavior as
|
||||
previously. (This functionality is at least partly superceded by the
|
||||
<CODE>mountpoint</CODE> preference, but it has been left in place in case it is
|
||||
useful to some people.)<BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">If Unison is asked to “follow” a symbolic link but there is
|
||||
useful to some people.)
|
||||
<LI CLASS="li-itemize">If Unison is asked to “follow” a symbolic link but there is
|
||||
nothing at the other end of the link, it will now flag this path as an
|
||||
error, rather than treating the symlink itself as missing or deleted.
|
||||
This avoids a potentially dangerous situation where a followed symlink
|
||||
@ -2674,45 +2896,31 @@ drives and compact flash cards. <BR>
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Added <CODE>forcepartial</CODE> and <CODE>preferpartial</CODE> preferences, which
|
||||
behave like <CODE>force</CODE> and <CODE>prefer</CODE> but can be specified on a
|
||||
per-path basis. [Thanks to Alan Schmitt for this.]<BR>
|
||||
<BR>
|
||||
per-path basis. [Thanks to Alan Schmitt for this.]
|
||||
<LI CLASS="li-itemize">A bare-bones self test feature was added, which runs unison through
|
||||
some of its paces and checks that the results are as expected. The
|
||||
coverage of the tests is still very limited, but the facility has already
|
||||
been very useful in debugging the new backup functionality (especially in
|
||||
exposing some subtle cross-platform issues).<BR>
|
||||
<BR>
|
||||
exposing some subtle cross-platform issues).
|
||||
<LI CLASS="li-itemize">Refined debugging code so that the verbosity of individual modules
|
||||
can be controlled separately. Instead of just putting '-debug
|
||||
verbose' on the command line, you can put '-debug update+', which
|
||||
causes all the extra messages in the Update module, but not other
|
||||
modules, to be printed. Putting '-debug verbose' causes all modules
|
||||
to print with maximum verbosity.<BR>
|
||||
<BR>
|
||||
to print with maximum verbosity.
|
||||
<LI CLASS="li-itemize">Removed <CODE>mergebatch</CODE> preference. (It never seemed very useful, and
|
||||
its semantics were confusing.)<BR>
|
||||
<BR>
|
||||
its semantics were confusing.)
|
||||
<LI CLASS="li-itemize">Rewrote some of the merging functionality, for better cooperation
|
||||
with external Harmony instances.<BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Changed the temp file prefix from <CODE>.#</CODE> to <CODE>.unison</CODE>.<BR>
|
||||
<BR>
|
||||
with external Harmony instances.
|
||||
<LI CLASS="li-itemize">Changed the temp file prefix from <CODE>.#</CODE> to <CODE>.unison</CODE>.
|
||||
<LI CLASS="li-itemize">Compressed the output from the text user interface (particularly
|
||||
when run with the <CODE>-terse</CODE> flag) to make it easier to interpret the
|
||||
results when Unison is run several times in succession from a script.<BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Diff and merge functions now work under Windows.<BR>
|
||||
<BR>
|
||||
results when Unison is run several times in succession from a script.
|
||||
<LI CLASS="li-itemize">Diff and merge functions now work under Windows.
|
||||
<LI CLASS="li-itemize">Changed the order of arguments to the default diff command (so that
|
||||
the + and - annotations in diff's output are reversed).<BR>
|
||||
<BR>
|
||||
the + and - annotations in diff's output are reversed).
|
||||
<LI CLASS="li-itemize">Added <CODE>.mpp</CODE> files to the “never fastcheck” list (like
|
||||
<CODE>.xls</CODE> files). <BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Ignore all-whitespace lines in preference files<BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Small fix to ctime (non-)handling in update detection under windows
|
||||
with fastcheck.
|
||||
<CODE>.xls</CODE> files).
|
||||
</UL><BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Many small bugfixes, including:
|
||||
@ -2769,24 +2977,21 @@ programs have been completely rewritten by Stephane Lescuyer (thanks,
|
||||
Stephane!). The user-visible functionality should not change, but the
|
||||
internals have been rationalized and there are a number of new features.
|
||||
See the manual (in particular, the description of the <CODE>backupXXX</CODE>
|
||||
preferences) for details.<BR>
|
||||
<BR>
|
||||
preferences) for details.
|
||||
<LI CLASS="li-itemize">Incorporated patches for ipv6 support, contributed by Samuel Thibault.
|
||||
(Note that, due to a bug in the released OCaml 3.08.3 compiler, this code
|
||||
will not actually work with ipv6 unless compiled with the CVS version of the
|
||||
OCaml compiler, where the bug has been fixed; however, ipv4 should continue
|
||||
to work normally.)<BR>
|
||||
<BR>
|
||||
to work normally.)
|
||||
<LI CLASS="li-itemize">OSX interface:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Incorporated Ben Willmore's cool new icon for the Mac UI.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Small fixes:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Fixed off by one error in month numbers (in printed dates) reported
|
||||
by Bob Burger
|
||||
</UL><BR>
|
||||
</UL>
|
||||
|
||||
</UL>
|
||||
|
||||
@ -2806,15 +3011,12 @@ status when they are announced for public consumption. Any bugs that are
|
||||
discovered will be fixed in a separate branch of the source repository
|
||||
(without changing the major version number) and new tarballs re-released as
|
||||
needed. When this process converges, the patched beta version will be
|
||||
dubbed stable.<BR>
|
||||
<BR>
|
||||
dubbed stable.
|
||||
<LI CLASS="li-itemize">Warning (failure in batch mode) when one path is completely emptied.
|
||||
This prevents Unison from deleting everything on one replica when
|
||||
the other disappear.<BR>
|
||||
<BR>
|
||||
the other disappear.
|
||||
<LI CLASS="li-itemize">Fix diff bug (where no difference is shown the first time the diff
|
||||
command is given).<BR>
|
||||
<BR>
|
||||
command is given).
|
||||
<LI CLASS="li-itemize">User interface changes:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Improved workaround for button focus problem (GTK2 UI)
|
||||
@ -2834,8 +3036,7 @@ to <CODE>modified on yyyy-mm-dd hh:mm:ss</CODE>
|
||||
the GTK2 UI under Linux. (Hopefully the Mac OS X one is not broken!)
|
||||
<LI CLASS="li-itemize">Include profile name in the GTK2 window name
|
||||
<LI CLASS="li-itemize">Added bindings ',' (same as '<') and '.' (same as '>') in the GTK2 UI
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Mac GUI:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
actions like < and > scroll to the next item as necessary.
|
||||
@ -2850,8 +3051,7 @@ actions like < and > scroll to the next item as necessary.
|
||||
gives better feedback.
|
||||
<LI CLASS="li-itemize">Size of left and right columns is now large enough so that
|
||||
"PropsChanged" is not cut off.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Minor changes:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Disable multi-threading when both roots are local
|
||||
@ -2876,7 +3076,7 @@ Disable multi-threading when both roots are local
|
||||
<LI CLASS="li-itemize">The strings CURRENT1 and CURRENT2 are now correctly substitued when
|
||||
they occur in the diff preference
|
||||
<LI CLASS="li-itemize">Improvements to syncing resource forks between Macs via a non-Mac system.
|
||||
</UL><BR>
|
||||
</UL>
|
||||
|
||||
</UL>
|
||||
|
||||
@ -2884,8 +3084,7 @@ Changes since 2.10.2:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
|
||||
<B>Incompatible change:</B>
|
||||
Archive format has changed. <BR>
|
||||
<BR>
|
||||
Archive format has changed.
|
||||
<LI CLASS="li-itemize">Source code availability: The Unison sources are now managed using
|
||||
Subversion. One nice side-effect is that anonymous checkout is now
|
||||
possible, like this:
|
||||
@ -2894,8 +3093,7 @@ Changes since 2.10.2:
|
||||
</PRE>We will also continue to export a “developer tarball” of the current
|
||||
(modulo one day) sources in the web export directory. To receive commit logs
|
||||
for changes to the sources, subscribe to the <CODE>unison-hackers</CODE> list
|
||||
(<A HREF="http://www.cis.upenn.edu/ bcpierce/unison/lists.html"><TT>http://www.cis.upenn.edu/ bcpierce/unison/lists.html</TT></A>). <BR>
|
||||
<BR>
|
||||
(<A HREF="http://www.cis.upenn.edu/ bcpierce/unison/lists.html"><TT>http://www.cis.upenn.edu/ bcpierce/unison/lists.html</TT></A>).
|
||||
<LI CLASS="li-itemize">Text user interface:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Substantial reworking of the internal logic of the text UI to make it
|
||||
@ -2903,16 +3101,14 @@ a bit easier to modify.
|
||||
<LI CLASS="li-itemize">The <TT>dumbtty</TT> flag in the text UI is automatically set to true if
|
||||
the client is running on a Unix system and the <TT>EMACS</TT> environment
|
||||
variable is set to anything other than the empty string.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Native OS X gui:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Added a synchronize menu item with keyboard shortcut
|
||||
<LI CLASS="li-itemize">Added a merge menu item, still needs to be debugged
|
||||
<LI CLASS="li-itemize">Fixes to compile for Panther
|
||||
<LI CLASS="li-itemize">Miscellaneous improvements and bugfixes
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Small changes:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Changed the filename checking code to apply to Windows only, instead
|
||||
@ -2957,10 +3153,8 @@ Major tidying and enhancement of 'merge' functionality. The main
|
||||
improvements.<BR>
|
||||
<BR>
|
||||
Warning: the new merging functionality is not completely compatible with
|
||||
old versions! Check the manual for details.<BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Files larger than 2Gb are now supported.<BR>
|
||||
<BR>
|
||||
old versions! Check the manual for details.
|
||||
<LI CLASS="li-itemize">Files larger than 2Gb are now supported.
|
||||
<LI CLASS="li-itemize">Added preliminary (and still somewhat experimental) support for the
|
||||
Apple OS X operating system.
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
@ -2982,7 +3176,8 @@ this interface.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
<LI CLASS="li-itemize">Minor functionality changes:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">Added an <TT>ignorelocks</TT> preference, which forces Unison to override left-over
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Added an <TT>ignorelocks</TT> preference, which forces Unison to override left-over
|
||||
archive locks. (Setting this preference is dangerous! Use it only if you
|
||||
are positive you know what you are doing.)
|
||||
<LI CLASS="li-itemize">Added a new preference <TT>assumeContentsAreImmutable</TT>. If a directory
|
||||
@ -2992,49 +3187,41 @@ this interface.
|
||||
contain lots and lots of immutable files.) Also a preference
|
||||
<TT>assumeContentsAreImmutableNot</TT>, which overrides the first, similarly
|
||||
to <TT>ignorenot</TT>. (Later amendment: these preferences are now called
|
||||
<TT>immutable</TT> and <TT>immutablenot</TT>.)<BR>
|
||||
<BR>
|
||||
<TT>immutable</TT> and <TT>immutablenot</TT>.)
|
||||
<LI CLASS="li-itemize">The <TT>ignorecase</TT> flag has been changed from a boolean to a three-valued
|
||||
preference. The default setting, called <TT>default</TT>, checks the operating systems
|
||||
running on the client and server and ignores filename case if either of them is
|
||||
OSX or Windows. Setting ignorecase to <TT>true</TT> or <TT>false</TT> overrides
|
||||
this behavior. If you have been setting <TT>ignorecase</TT> on the command
|
||||
line using <TT>-ignorecase=true</TT> or <TT>-ignorecase=false</TT>, you will
|
||||
need to change to <TT>-ignorecase true</TT> or <TT>-ignorecase false</TT>.<BR>
|
||||
<BR>
|
||||
need to change to <TT>-ignorecase true</TT> or <TT>-ignorecase false</TT>.
|
||||
<LI CLASS="li-itemize">a new preference, 'repeat', for the text user interface (only). If 'repeat' is set to
|
||||
a number, then, after it finishes synchronizing, Unison will wait for that many seconds and
|
||||
then start over, continuing this way until it is killed from outside. Setting repeat to true
|
||||
will automatically set the batch preference to true. <BR>
|
||||
<BR>
|
||||
will automatically set the batch preference to true.
|
||||
<LI CLASS="li-itemize">Excel files are now handled specially, so that the <TT>fastcheck</TT>
|
||||
optimization is skipped even if the <TT>fastcheck</TT> flag is set. (Excel
|
||||
does some naughty things with modtimes, making this optimization
|
||||
unreliable and leading to failures during change propagation.)<BR>
|
||||
<BR>
|
||||
unreliable and leading to failures during change propagation.)
|
||||
<LI CLASS="li-itemize">The ignorecase flag has been changed from a boolean to a three-valued
|
||||
preference. The default setting, called 'default', checks the operating systems
|
||||
running on the client and server and ignores filename case if either of them is
|
||||
OSX or Windows. Setting ignorecase to 'true' or 'false' overrides this behavior.<BR>
|
||||
<BR>
|
||||
OSX or Windows. Setting ignorecase to 'true' or 'false' overrides this behavior.
|
||||
<LI CLASS="li-itemize">Added a new preference, 'repeat', for the text user interface (only,
|
||||
at the moment). If 'repeat' is set to a number, then, after it finishes
|
||||
synchronizing, Unison will wait for that many seconds and then start over,
|
||||
continuing this way until it is killed from outside. Setting repeat to
|
||||
true will automatically set the batch preference to true.<BR>
|
||||
<BR>
|
||||
true will automatically set the batch preference to true.
|
||||
<LI CLASS="li-itemize">The 'rshargs' preference has been split into 'rshargs' and 'sshargs'
|
||||
(mainly to make the documentation clearer). In fact, 'rshargs' is no longer
|
||||
mentioned in the documentation at all, since pretty much everybody uses
|
||||
ssh now anyway.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Documentation
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
The web pages have been completely redesigned and reorganized.
|
||||
(Thanks to Alan Schmitt for help with this.)
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">User interface improvements
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Added a GTK2 user interface, capable (among other things) of displaying filenames
|
||||
@ -3047,8 +3234,7 @@ Added a GTK2 user interface, capable (among other things) of displaying filename
|
||||
command).
|
||||
<LI CLASS="li-itemize">Several small improvements to the text user interface, including a
|
||||
progress display.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Bug fixes (too numerous to count, actually, but here are some):
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
The <TT>maxthreads</TT> preference works now.
|
||||
@ -3067,8 +3253,7 @@ The <TT>maxthreads</TT> preference works now.
|
||||
sorted, so it wouldn't work properly in all cases.
|
||||
<LI CLASS="li-itemize">Incorporated a fix by Dmitry Bely for setting utimes of read-only files
|
||||
on Win32 systems.
|
||||
</UL><BR>
|
||||
<BR>
|
||||
</UL>
|
||||
<LI CLASS="li-itemize">Installation / portability:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
Unison now compiles with OCaml version 3.07 and later out of the box.
|
||||
@ -3133,16 +3318,11 @@ Changing profile works again under Windows
|
||||
Unix
|
||||
<LI CLASS="li-itemize">Small improvements:
|
||||
<UL CLASS="itemize"><LI CLASS="li-itemize">
|
||||
If neither the <BR>
|
||||
tt USERPROFILE nor the <BR>
|
||||
tt HOME environment
|
||||
If neither the <TT>USERPROFILE</TT> nor the <TT>HOME</TT> environment
|
||||
variables are set, then Unison will put its temporary commit log
|
||||
(called <BR>
|
||||
tt DANGER.README) into the directory named by the
|
||||
<BR>
|
||||
tt UNISON environment variable, if any; otherwise it will use
|
||||
<BR>
|
||||
tt C:.
|
||||
(called <TT>DANGER.README</TT>) into the directory named by the
|
||||
<TT>UNISON</TT> environment variable, if any; otherwise it will use
|
||||
<TT>C:</TT>.
|
||||
<LI CLASS="li-itemize">alternative set of values for fastcheck: yes = true; no = false;
|
||||
default = auto.
|
||||
<LI CLASS="li-itemize">-silent implies -contactquietly
|
||||
@ -3202,8 +3382,7 @@ Renamed `Proceed' to `Go' in the graphical UI.
|
||||
update detection are now noted in the log file.
|
||||
<LI CLASS="li-itemize"><CODE>[END]</CODE> messages in log now use a briefer format
|
||||
<LI CLASS="li-itemize">Changed the text UI startup sequence so that
|
||||
<BR>
|
||||
tt ./unison -ui text will use the default profile instead of failing.
|
||||
<TT>./unison -ui text</TT> will use the default profile instead of failing.
|
||||
<LI CLASS="li-itemize">Made some improvements to the error messages.
|
||||
<LI CLASS="li-itemize">Added some debugging messages to remote.ml.
|
||||
</UL>
|
3
unison-2.32.52.tar.gz
Normal file
3
unison-2.32.52.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1542e5d4ad03e928260e061a8ff9d5e0bca3282481ed8bec5552de17a0270485
|
||||
size 697866
|
@ -1,3 +1,23 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 16 10:51:19 UTC 2009 - mhopf@novell.com
|
||||
|
||||
- Update to latest stable version 2.32.52
|
||||
* If Unison is interrupted during a directory transfer, it will now leave
|
||||
the partially transferred directory intact in a temporary location
|
||||
* Added experimental support for invoking an external file transfer tool for
|
||||
whole-file copies
|
||||
* Very preliminary support for triggering Unison from an external
|
||||
filesystem-watching utility.
|
||||
* Ignore one hour differences when deciding whether a file may have been
|
||||
updated (ignore daylight saving time changes under Windows)
|
||||
* Fixed slow performances when transferring a file using our rsync
|
||||
implementation from a 64-bit architecture to a 32-bit architecture
|
||||
* Case sensitivity information put in the archive (in a backward compatible
|
||||
way) and checked when the archive is loaded
|
||||
* Upgraded to GPL version 3
|
||||
* In repeat mode, don't save the archives when there is no update
|
||||
* Tons of bug fixes + small additions
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 4 16:50:56 CEST 2009 - mhopf@novell.com
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package unison (Version 2.27.157)
|
||||
# spec file for package unison (Version 2.32.52)
|
||||
#
|
||||
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
@ -25,10 +25,10 @@ BuildRequires: lablgtk2-devel
|
||||
%else
|
||||
BuildRequires: lablgtk2
|
||||
%endif
|
||||
License: GPL v3 or later
|
||||
License: GPLv3+
|
||||
Group: Productivity/Networking/Other
|
||||
AutoReqProv: on
|
||||
Version: 2.27.157
|
||||
Version: 2.32.52
|
||||
Release: 1
|
||||
Source0: http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-%{version}.tar.gz
|
||||
Source1: http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-%{version}-manual.html
|
||||
|
Loading…
x
Reference in New Issue
Block a user