The unified diff between revisions [8846a6b8..] and [ebdccab0..] is displayed below. It can also be downloaded as a raw diff.
This diff has been restricted to the following files: 'monotone.texi'
#
#
# patch "monotone.texi"
# from [355d07f84caee318dd69f37ff6274842ca2d2c70]
# to [d62e740d5bf36c317e4ec3fea155132bd7ba702d]
#
============================================================
--- monotone.texi 355d07f84caee318dd69f37ff6274842ca2d2c70
+++ monotone.texi d62e740d5bf36c317e4ec3fea155132bd7ba702d
@@ -34,7 +34,7 @@
@page
@vskip 0pt plus 1filll
Copyright @copyright{} 2003, 2004 Graydon Hoare
-Copyright @copyright{} 2004, 2005 Nathaniel Smith
+Copyright @copyright{} 2004, 2005, 2006 Nathaniel Smith
Copyright @copyright{} 2005 Derek Scherger
Copyright @copyright{} 2005 Daniel Carosone
All rights reserved
@@ -3186,7 +3186,7 @@ @section File Attributes
quoted value for that attribute. Stanzas are separated by blank lines.
As a convenience, you can use the @code{monotone attr} command to set
-and view the values of these attributes; see @ref{Working Copy}.
+and view the values of these attributes; see @ref{Workspace}.
You can tell monotone to automatically take actions based on these
attributes by defining hooks; see the @code{attr_functions} entry in
@@ -3421,7 +3421,7 @@ @heading Incorporating New Changes
examine descendents of your base revision, and ignore other heads on
your branch.
-@heading Moving Working Copy to Another Revision
+@heading Moving Workspace to Another Revision
@multitable @columnfractions .4 .4
@item
@@ -3487,7 +3487,7 @@ @heading Viewing Differences
@emph{revision IDs}, rather than file IDs. If one leaves off the file
argument, then diff can print the difference between two entire trees.
-@heading Showing Working Copy Status
+@heading Showing Workspace Status
@multitable @columnfractions .4 .4
@item
@@ -3508,7 +3508,7 @@ @heading Showing Working Copy Status
difference is that monotone's @command{status} command always gives a
status of the whole tree, and outputs a more compact summary than CVS.
-@heading Adding Directories and Files to Working Copy
+@heading Adding Directories and Files to Workspace
@multitable @columnfractions .4 .4
@item
@@ -3532,7 +3532,7 @@ @heading Adding Directories and Files to
Directories are created as needed, and empty directories are ignored.
-@heading Removing Directories and Files from Working Copy
+@heading Removing Directories and Files from Workspace
@multitable @columnfractions .4 .4
@item
@@ -3631,7 +3631,7 @@ @chapter Command Reference
@menu
* Tree:: Operations on tree states in your database
-* Working Copy:: Operations on your workspace
+* Workspace:: Operations on your workspace
* Network:: Communication with the network
* Informative:: Production of descriptive reports
* Key and Cert:: General operations on keys or certificates
@@ -3790,8 +3790,8 @@ @section Tree
@page
-@node Working Copy
-@section Working Copy
+@node Workspace
+@section Workspace
@ftable @command
@item monotone setup [@var{directory}]
@@ -3826,7 +3826,7 @@ @section Working Copy
any added entries inserted in its manifest.
-@item monotone drop @var{pathname...}
+@item monotone [--execute] drop @var{pathname...}
@itemx monotone drop --missing
This command places ``drop'' entries for the paths specified in
@var{pathname...} in the workspace's ``work list''. The work list of
@@ -3850,6 +3850,10 @@ @section Working Copy
you should run @command{drop}, and then perform the actual delete using
whatever mechanism you normally use to delete files.
+The option @option{--execute} will make ``drop'' perform the actual
+deletion operations in the filesystem. It will ignore files or
+directories which have already been deleted.
+
@item monotone [--execute] rename @var{src} @var{dst}
@itemx monotone [--execute] rename @var{src1} @var{...} @var{dst/}
This command places ``rename'' entries for the paths specified in
@@ -4012,6 +4016,35 @@ @section Working Copy
in inodeprints mode, and that the inodeprints cache is accurate and up
to date.
+@item monotone pivot_root [--execute] pivot_root @var{new_root} @var{put_old}
+Most users will never need this command. It is primarily useful in
+certain tricky cases where one wishes to combine several projects
+into one, or split one project into several.
+
+Its effect is to rename the directory whose name is currently
+@var{new_root} to become the root directory of the versioned tree, and
+to at the same time rename the directory that is currently the root of
+the versioned tree to have the name @var{put_old}. Conceptually, it
+is equivalent to executing the following commands in the root of the
+workspace:
+
+@smallexample
+@group
+$ monotone rename . @var{new_root}/@var{put_old}
+$ monotone rename @var{new_root} .
+@end group
+@end smallexample
+
+Except, of course, that these @command{rename} commands are illegal,
+because after the first command the tree has no root at all, and there
+is a directory loop. This illegality is the only reason for
+@command{pivot_root}'s existence; internally, the result is treated
+exactly like two renames, including with respect to merges and
+updates.
+
+The use of @option{--execute} with this command is strongly
+recommended, though not required.
+
@end ftable
@page
@@ -4139,26 +4172,37 @@ @section Informative
to files changed within the current subdirectory of the workspace.
@item monotone log
-@itemx monotone log [--last=@var{n}] [--revision=@var{id} [...]] [--brief] [--merges] [@var{file} [...]]
+@itemx monotone log [--last=@var{n}] [--next=@var{n}] [--revision=@var{id} [...]] [--brief] [--no-merges] [--no-files] [--diffs] [@var{file} [...]]
This command prints out a log, in reverse-ancestry order, of small
history summaries. Each summary contains author, date, changelog and
-comment information associated with a revision.
+comment information associated with a revision.
If @code{--brief} is given, the output consists of one line per revision
with the revision ID, the author, the date and the branches (separated
with commas).
-If @code{--last=}@var{n} is given, at most that many log entries will be
+If @code{--last=}@var{n} is given, at most @var{n} log entries will be
given.
-By default, the log entries for merge nodes are not shown; usually they
-don't contain much interesting information. If @code{--merges} is given,
-the log entries for these nodes will be included.
+If @code{--next=}@var{n} is given, at most @var{n} log entries towards
+the current head revision will be given from the workspace's base
+revision in forward-ancestry order. This is useful to review changes
+that will be applied to the workspace when @command{update} is run.
+By default, the log entries for merge nodes are shown. If
+@code{--no-merges} is given, the log entries for these nodes will be
+excluded.
+
+If @code{--no-files} is given, the log output excludes the list of
+files changed in each revision.
+
+Specifying @code{--diffs} causes the log output to include a unified
+diff of the changes in each revision.
+
If one or more revision IDs are given, the command starts tracing back
-through history from these revisions, otherwise it starts from the base
-revision of your workspace.
+through history from these revisions, otherwise it starts from the
+base revision of your workspace.
If one or more files are given, the command will only log the revisions
where those files are changed.
@@ -4435,12 +4479,7 @@ @section Key and Cert
This command generates an @sc{rsa} public/private key pair, using a
system random number generator, and stores it in your keystore under
-the key name @var{keyid}. If the the hook
-@code{non_blocking_rng_ok()} returns @code{true}, the key
-generation will use an unlimited random number generator (such as
-@file{/dev/urandom}), otherwise it will use a higher quality random
-number generator (such as @file{/dev/random}) but might run slightly
-slower.
+the key name @var{keyid}.
The private half of the key is stored in an encrypted form, so that anyone
who can read your keystore cannot extract your private key and use it.
@@ -6157,25 +6196,6 @@ @subsection User Defaults
For the default definition of this hook, see @ref{Default hooks}.
-@item non_blocking_rng_ok ()
-
-Returns @code{true} if you are willing to let monotone use the
-system's non-blocking random number generator, such as
-@file{/dev/urandom}, for generating random values during cryptographic
-operations. This diminishes the cryptographic strength of such
-operations, but speeds them up. Returns @code{false} if you want to
-force monotone to always use higher quality random numbers, such as
-those from @file{/dev/random}.
-
-The default definition of this hook is:
-@smallexample
-@group
-function non_blocking_rng_ok()
- return true
-end
-@end group
-@end smallexample
-
@item persist_phrase_ok ()
Returns @code{true} if you want monotone to remember the passphrase of
@@ -7770,6 +7790,10 @@ @section OPTIONS
Dump debugging log to @i{<file>} on failure.
@comment TROFF INPUT: .TP
+@item @b{--log=}@i{<file>}
+Redirect the log lines to to @i{<file>}.
+@comment TROFF INPUT: .TP
+
@item @b{--nostd}
Do not evaluate "standard" Lua hooks compiled into @b{monotone}.
@comment TROFF INPUT: .TP