# # # patch "NEWS" # from [76511d0b3a4b098028881ed70e290f90f0928584] # to [3f622a2f607010720f7e2ddf6fef4f1aa03e2c0a] # # patch "monotone.texi" # from [f7e524e86db1abd48eb792525bd88f7b1a74c5dd] # to [c4402b63ac3d3061b85d5ca7788fe8fa31105adc] # # patch "options_list.hh" # from [30e581980d593fb8a0443868740c7d0c19840a88] # to [386d0f1d1bce685fc2e7532ef595cae985edef6a] # ============================================================ --- NEWS 76511d0b3a4b098028881ed70e290f90f0928584 +++ NEWS 3f622a2f607010720f7e2ddf6fef4f1aa03e2c0a @@ -83,6 +83,88 @@ Xxx Xxx 99 99:99:99 UTC 2010 New Features + - Options can now be overridden; you can specify --no-unknown + --unknown on the command line. Similarly, you can specify + --no-unknown in the get_default_command_options hook, then + change it to --unknown on the command line. + + - New global options: + -v increase verbosity level by one + --no-ignore-suspend-certs undo previous --ignore-suspend-certs + --use-default-key undo previous --key + --allow-default-confdir undo previous --no-default-confdir + --allow-workspace undo previous --no-workspace + --interactive undo previous --non-interactive + --yesrc undo previous --norc + --stdhooks undo previous --nostd + --clear-rcfiles undo previous --rcfile + --verbose set verosity level to 1 + --verbosity set verbosity level + + - Global options now hidden: + --roster-cache-performance-log + + - New command options: + add + --no-recursive undo previous --recursive + --respect-ignore undo previous --no-respect-ignore + --no-unknown undo previous --unknown + bisect *, checkout, pivot_root, pluck, update, automate update + --no-move-conflicting-paths undo previous --move-conflicting-paths + diff + --without-header undo previous --with-header + --show-encloser undo previous --show-encloser + disapprove, suspend + --no-update undo previous --update + drop + --no-recursive undo previous --recursive + explicit_merge, merge, merge_into_dir propagate + --no-resolve-conflicts undo previous --resolve-conflicts + --no-update undo previous --update + log + --no-brief undo previous --brief + --no-diffs undo previous --diffs + --clear-from undo previous --from + --files undo previous --no-files + --graph undo previous --no-graph + --merges undo previous --no-merges + --clear-to undo previous --to + import + --no-dry-run undo previous --dry-run + --respect-ignore undo previous --no-respect-ignore + mkdir + --respect-ignore undo previous --no-respect-ignore + serve + --no-pid-file undo previous --pid-file + + sync, pull, push, automate remote_stdio, automate remote + automate pull, automate push, automate sync + --no-set-default undo previous --set-default + + automate inventory + --corresponding-renames undo previous --no-corresponding-renames + --ignored undo previous --no-ignored + --unchanged undo previous --no-unchanged + --unknown undo previous --no-unknown + + automate content_diff + --without-header undo previous --with-header + + automate show_conflicts + --no-ignore-suspend-certs undo previous --ignore-suspend-certs + + automate log + --clear-from undo previous --from + --merges undo previous --no-merges + --clear-to undo previous --to + + - Command options now hidden: + (several commands) --no-prefix + serve --stdio --no-transport-auth + + - Deprecated options: + --full use --verbose + - The 'disapprove' command now accepts a revision range in addition to a single revision. ============================================================ --- monotone.texi f7e524e86db1abd48eb792525bd88f7b1a74c5dd +++ monotone.texi c4402b63ac3d3061b85d5ca7788fe8fa31105adc @@ -31,7 +31,7 @@ This manual is for the ``monotone'' distributed version control system. This edition documents version @value{VERSION}. -Copyright @copyright{} 2003, 2004 Graydon Hoare @* +Copyright @copyright{} 2003, 2004, 2010 Graydon Hoare @* Copyright @copyright{} 2004, 2005, 2006 Nathaniel Smith @* Copyright @copyright{} 2005 - 2010 Derek Scherger @* Copyright @copyright{} 2005, 2006 Daniel Carosone @* @@ -4866,6 +4866,24 @@ @chapter Command Reference Monotone has a large number of commands. To help navigate through them all, commands are grouped into logical categories. +Many command options come in pairs that affect the same value. For example, address@hidden log} takes a @var{brief} option; this can be reversed by address@hidden This is convenient when building command strings +automatically; @command{mtn log --brief --no-brief} is the same as address@hidden log}. + +It also helps when setting options in the address@hidden hook; those options can be +overridden on the command line. For example, if address@hidden specifies @var{brief} for address@hidden, you can override that with @command{mtn log +--no-brief}. + +The command descriptions describe the most important options for each +command, and only one of each pair of options. For a complete list of +options, see the online help (@command{mtn help cmd}), or the manpage. + + @menu * Tree:: Operations on tree states in your database * Workspace:: Operations on your workspace @@ -4898,10 +4916,10 @@ @section Tree With an explicit @option{--revision} argument, the command outputs contents of @var{path} at that revision. address@hidden mtn checkout [--move-conflicting-paths] address@hidden @var{directory} address@hidden mtn co [--move-conflicting-paths] address@hidden @var{directory} address@hidden mtn [--move-conflicting-paths] address@hidden checkout @var{directory} address@hidden mtn [--move-conflicting-paths] address@hidden co @var{directory} address@hidden mtn checkout [--[no-]move-conflicting-paths] address@hidden @var{directory} address@hidden mtn co [--[no-]move-conflicting-paths] address@hidden @var{directory} address@hidden mtn [--[no-]move-conflicting-paths] address@hidden checkout @var{directory} address@hidden mtn [--[no-]move-conflicting-paths] address@hidden co @var{directory} These commands copy a revision @var{id} out of your database, recording the chosen revision (the @dfn{base revision}) in the file @@ -5055,8 +5073,8 @@ @section Tree originally in @var{sourcebranch}, which is almost certainly not what would be intended. address@hidden mtn import address@hidden address@hidden [--dry-run] @var{dir} address@hidden mtn import address@hidden address@hidden [--dry-run] @var{dir} address@hidden mtn import address@hidden address@hidden [--[no-]dry-run] @var{dir} address@hidden mtn import address@hidden address@hidden [--[no-]dry-run] @var{dir} This command imports the contents of the given directory and commits it to the head of the given branch or as a child of the given revision (and consequently into the branch that revision resides in). @@ -5245,8 +5263,8 @@ @section Workspace @command{mtn commit}. If no directory is specified, the current directory is used. address@hidden mtn add [--recursive | -R] [--no-respect-ignore] @var{pathname...} address@hidden mtn add [--recursive | -R] [--no-respect-ignore] --unknown address@hidden address@hidden mtn add [--[no-]recursive | -R] [--[no-]respect-ignore] @var{pathname...} address@hidden mtn add [--[no-]recursive | -R] [--[no-]respect-ignore] --[no-]unknown address@hidden This command places ``add'' entries for the paths specified in @var{pathname...} in the workspace's ``work list''. The work list of your workspace is stored in @file{_MTN/revision}, and is a list of @@ -5269,7 +5287,7 @@ @section Workspace directory non-recursively, monotone will warn if the directory has any files that would be added by a recursive add. address@hidden mtn [--no-respect-ignore] mkdir @var{directory...} address@hidden mtn [--[no-]respect-ignore] mkdir @var{directory...} This command creates a directory in the filesystem relative to your current location and adds it to your workspace's ``work list''. The changes are not reflected in your database until such time as you @@ -5477,8 +5495,8 @@ @section Workspace deleted from the workspace. Only missing files matching the given file or directory arguments are reverted. address@hidden mtn update [--move-conflicting-paths] address@hidden mtn update [--move-conflicting-paths] address@hidden address@hidden mtn update [--[no-]move-conflicting-paths] address@hidden mtn update [--[no-]move-conflicting-paths] address@hidden Without a @option{--revision} argument, this command incorporates ``recent'' changes found in your database into your workspace. It does this by performing 3 separate stages. If any of these stages @@ -5520,8 +5538,8 @@ @section Workspace When running @command{update}, it is sometimes possible for @ref{Workspace Collisions} to occur. address@hidden mtn pluck [--move-conflicting-paths] address@hidden address@hidden mtn pluck [--move-conflicting-paths] address@hidden address@hidden address@hidden mtn pluck [--[no-]move-conflicting-paths] address@hidden address@hidden mtn pluck [--[no-]move-conflicting-paths] address@hidden address@hidden This command takes changes made at any point in history, and attempts to edit your current workspace to include those changes. The end result is @@ -5564,7 +5582,7 @@ @section Workspace in inodeprints mode, and that the inodeprints cache is accurate and up to date. address@hidden mtn pivot_root [--bookkeep-only] [--move-conflicting-paths] pivot_root @var{new_root} @var{put_old} address@hidden mtn pivot_root [--bookkeep-only] [--[no-]move-conflicting-paths] 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. See also @command{merge_into_dir}. @@ -5597,7 +5615,7 @@ @section Workspace When running @command{pivot_root}, it is sometimes possible for @ref{Workspace Collisions} to occur. address@hidden mtn bisect good address@hidden ...] [--move-conflicting-paths] address@hidden mtn bisect good address@hidden ...] [--[no-]move-conflicting-paths] Mark the specified revisions as ``good'' for the current bisection operation. If no bisection operation is in progress a new bisection is initialized. If a bisection operation is in progress the next update @@ -5610,7 +5628,7 @@ @section Workspace @command{bisect update} command can be used with this option to update the workspace and move the conflicting paths out of the way. address@hidden mtn bisect bad address@hidden ...] [--move-conflicting-paths] address@hidden mtn bisect bad address@hidden ...] [--[no-]move-conflicting-paths] Mark the specified revisions as ``bad'' for the current bisection operation. If no bisection operation is in progress a new bisection is initialized. If a bisection operation is in progress the next update @@ -5623,7 +5641,7 @@ @section Workspace @command{bisect update} command can be used with this option to update the workspace and move the conflicting paths out of the way. address@hidden mtn bisect skip address@hidden ...] [--move-conflicting-paths] address@hidden mtn bisect skip address@hidden ...] [--[no-]move-conflicting-paths] Mark the specified revisions as ``skipped'' for the current bisection operation. If no bisection operation is in progress a new bisection is initialized. If a bisection operation is in progress the next update @@ -5636,7 +5654,7 @@ @section Workspace @command{bisect update} command can be used with this option to update the workspace and move the conflicting paths out of the way. address@hidden mtn bisect update [--move-conflicting-paths] address@hidden mtn bisect update [--[no-]move-conflicting-paths] Update the workspace to the next revision selected by the previous bisect operation. This command can be useful when the previous bisect operation fails to update the workspace because of conflicting @@ -5661,13 +5679,12 @@ @section Network @ftable @command @item mtn serve address@hidden:@var{port}]] address@hidden mtn serve --stdio [--no-transport-auth] address@hidden mtn pull [--set-default] address@hidden address@hidden mtn push [--set-default] address@hidden address@hidden address@hidden mtn sync [--set-default] address@hidden address@hidden address@hidden mtn pull [--set-default] address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn push [--set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn sync [--set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn pull [--[no-]set-default] address@hidden address@hidden mtn push [--[no-]set-default] address@hidden address@hidden address@hidden mtn sync [--[no-]set-default] address@hidden address@hidden address@hidden mtn pull [--[no-]set-default] address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn push [--[no-]set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn sync [--[no-]set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} These commands operate the ``netsync'' protocol built into monotone. This is a custom protocol for rapidly synchronizing two @@ -5834,7 +5851,7 @@ @section Informative changed within the current subdirectory of the workspace. @item mtn log address@hidden mtn log address@hidden address@hidden address@hidden [...]] address@hidden [...]] address@hidden [...]] [--brief] [--no-merges] [--no-files] [--no-graph] [--diffs] address@hidden address@hidden mtn log address@hidden address@hidden address@hidden [...]] [--clear-from] address@hidden [...]] [--clear-to] address@hidden [...]] [--[no-]brief] [--[no-]merges] [--[no-]files] [--[no-]graph] [--[no-]diffs] address@hidden This command prints out a log, in forward ancestry order by default but optionally in reverse ancestry order, of small history summaries. @@ -5862,6 +5879,10 @@ @section Informative of the revision history or revisions specified by the @option{--to} option. address@hidden erases the effect of all previous address@hidden options. @option{--clear-to} erases the effect of all +previous @option{--to} options. + When tracing through history in reverse-ancestry order and @address@hidden is given, log will stop when it reaches the specified revisions or any of their ancestors or the end of the @@ -5955,8 +5976,8 @@ @section Informative @end group @end smallexample address@hidden mtn diff [--unified] [--no-show-encloser] address@hidden mtn diff --context [--no-show-encloser] address@hidden mtn diff [--unified] [--[no-]show-encloser] address@hidden mtn diff --context [--[no-]show-encloser] @itemx mtn diff --external address@hidden @itemx mtn diff @var{pathname...} @itemx mtn diff [--reverse] address@hidden @@ -7496,16 +7517,16 @@ @section Automation @item address@hidden File or directory to exclude. address@hidden --no-ignored address@hidden --[no-]ignored Don't output ignored files or directories. address@hidden --no-unknown address@hidden --[no-]unknown Don't output unknown directories. address@hidden --no-unchanged address@hidden --[no-]unchanged Don't output files that are known but not changed in any way. address@hidden --no-corresponding-renames address@hidden --[no-]corresponding-renames If restricted to a renamed path, do not output the corresponding old / new paths for this restriction. @@ -8420,12 +8441,12 @@ @section Automation @end table address@hidden mtn automate pull [--set-default] address@hidden address@hidden mtn automate push [--set-default] address@hidden address@hidden address@hidden mtn automate sync [--set-default] address@hidden address@hidden address@hidden mtn automate pull [--set-default] address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn automate push [--set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn automate sync [--set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn automate pull [--[no-]set-default] address@hidden address@hidden mtn automate push [--[no-]set-default] address@hidden address@hidden address@hidden mtn automate sync [--[no-]set-default] address@hidden address@hidden address@hidden mtn automate pull [--[no-]set-default] address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn automate push [--[no-]set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} address@hidden mtn automate sync [--[no-]set-default] address@hidden address@hidden address@hidden [...] address@hidden @strong{deprecated} @table @strong @item Arguments: @@ -9748,7 +9769,7 @@ @section Automation @item Arguments: The optional @var{base-id} specifies a file-id on which the contents are -based on. This is used for delta encoding. @var{contents} are the contents of +based. This is used for delta encoding. @var{contents} are the contents of the new file. @item Added in: @@ -10215,8 +10236,8 @@ @section Automation @item Arguments: address@hidden address@hidden address@hidden [...]] address@hidden [...]] [--no-merges] address@hidden +[--clear-from] address@hidden [...]] [--clear-to] +[--[no-]merges] address@hidden Same as @command{mtn log}, but without the output control options; see @ref{Informative}. @@ -10255,7 +10276,7 @@ @section Automation @item Arguments: Same as @command{mtn update}; no arguments, options address@hidden, @var{--revision=revision} address@hidden, @var{--revision=revision} @item Added in: ============================================================ --- options_list.hh 30e581980d593fb8a0443868740c7d0c19840a88 +++ options_list.hh 386d0f1d1bce685fc2e7532ef595cae985edef6a @@ -294,7 +294,7 @@ GROUPED_SIMPLE_OPTION(au_diff_options, r gettext_noop("argument to pass external diff hook")) GROUPED_SIMPLE_OPTION(au_diff_options, reverse, "reverse", bool, gettext_noop("reverse order of diff")) -GROUPED_SIMPLE_OPTION(diff_options, no_show_encloser, "no-show-encloser", bool, +GROUPED_SIMPLE_OPTION(diff_options, no_show_encloser, "no-show-encloser/show-encloser", bool, gettext_noop("do not show the function containing each block of changes")) OPTSET_REL(au_diff_options, with_header) SIMPLE_OPTION(with_header, "with-header/without-header", bool, @@ -542,7 +542,7 @@ OPTSET_REL(automate_inventory_opts, no_c SIMPLE_OPTION(no_unchanged, "no-unchanged/unchanged", bool, gettext_noop("don't output unchanged files")) OPTSET_REL(automate_inventory_opts, no_corresponding_renames) -SIMPLE_OPTION(no_corresponding_renames, "no-corresponding-renames", bool, +SIMPLE_OPTION(no_corresponding_renames, "no-corresponding-renames/corresponding-renames", bool, gettext_noop("don't output corresponding renames if restricted on such nodes"))