# # # patch "ChangeLog" # from [fe8a8cb76e9eaf3b17ed4dc96d67ab1a080d4c31] # to [061cb7381aa300bd2c09c8138a670f3308915002] # # patch "monotone.texi" # from [868d245cec03da10c9e8d3e7bd7348985cc5a39b] # to [8e3716797502aec86386010a1866dd2f83e0525a] # ============================================================ --- ChangeLog fe8a8cb76e9eaf3b17ed4dc96d67ab1a080d4c31 +++ ChangeLog 061cb7381aa300bd2c09c8138a670f3308915002 @@ -1,3 +1,13 @@ +2006-11-03 Daniel Carosone + + Tidy up some description of certs and the tag command: + * mention the purpose of tag certs + * remove stale mention of file certs in the description of "comment" + * move "mtn cert" to the certificate section, together with all the + things that are synonyms for it. + * rename the "key and cert" section accordingly + * add a "tag" section to the cvs phrasebook. + 2006-11-02 Timothy Brownawell Allow commands with subcommands (such as automate) to take ============================================================ --- monotone.texi 868d245cec03da10c9e8d3e7bd7348985cc5a39b +++ monotone.texi 8e3716797502aec86386010a1866dd2f83e0525a @@ -3168,10 +3168,15 @@ @section Reserved Certs reserved cert name and standardize its semantics. Most reserved certificate names have no meaning yet; some do. Usually -monotone is also responsible for @emph{generating} these certificates, -so you should generally have no cause to make them yourself. They are -described here to help you understand monotone's operation. +monotone is also responsible for @emph{generating} many of these certs +as part of normal operation, such as during a @command{commit}. Others +will be added explicitly via other commands, like @command{tag} or address@hidden +As well as carrying other information, certs (and combinations of certs) +are useful for identifying revisions with @ref{Selectors}; in +particular, this is the primary purpose of the @code{tag} cert. + The pre-defined, reserved certificate names are: @table @code @@ -3197,9 +3202,8 @@ @section Reserved Certs @item comment This cert's value is an additional comment, usually provided after -committing, about a revision. Certs with the name @code{comment} can -be applied to files as well, and will be shown by the @command{log} -command. +committing, about a revision. Certs with the name @code{comment} will be +shown together with @code{changelog} certs by the @command{log} command. @item date This cert's value is an ISO date string indicating the time at which a @@ -3209,7 +3213,8 @@ @section Reserved Certs @item tag This cert's value is a symbolic name given to a revision, which may be -used in the future as a way of selecting versions for @command{checkout}. +used as a way of selecting the revision by name for later commands like address@hidden and @command{diff}. @item testresult This cert's value is interpreted as a boolean string, either @code{0} @@ -3737,6 +3742,31 @@ @heading Incorporating New Changes examine descendents of your base revision, and ignore other heads on your branch. + address@hidden Tagging Revisions + address@hidden @columnfractions .4 .4 address@hidden address@hidden address@hidden +$ cvs tag FOO_TAG . address@hidden group address@hidden smallexample address@hidden address@hidden address@hidden +$ mtn tag h: FOO_TAG address@hidden group address@hidden smallexample address@hidden multitable + +With CVS, tags are placed on individual files, and the closest thing to +identifying a consistent repository-wide revision is a set of files with +the same tag. In monotone, all changes are part of a repository-wide +revision, and some of those revisions may be tagged. Monotone has no +partial tags that apply only to a subset of files. + + @heading Moving Workspace to Another Revision @multitable @columnfractions .4 .4 @@ -3950,8 +3980,8 @@ @chapter Command Reference * Workspace:: Operations on your workspace * Network:: Communication with the network * Informative:: Production of descriptive reports -* Key and Cert:: General operations on keys or certificates -* Certificate:: Special operations on certificates +* Key and Cert Trust:: Keys and Trust Evaluations based on them +* Certificate:: Creation of certificates * Packet I/O:: Production or consumption of packets * Database:: Manipulation of your database as a whole * Automation:: Running monotone from other programs @@ -4899,8 +4929,8 @@ @section Informative @page address@hidden Key and Cert address@hidden Key and Cert address@hidden Key and Cert Trust address@hidden Key and Cert Trust @ftable @command @item mtn genkey @var{keyid} @@ -4932,14 +4962,6 @@ @section Key and Cert This command lets you change the passphrase of the private half of the key @var{id}. address@hidden mtn cert @var{id} @var{certname} address@hidden mtn cert @var{id} @var{certname} @var{certval} - -These commands create a new certificate with name @var{certname}, for -a revision with version @var{id}. If @var{certval} is provided, it is -the value of the certificate. Otherwise the certificate value is read -from @code{stdin}. - @item mtn trusted @var{id} @var{certname} @var{certval} @var{signers} This command lets you test your revision trust hook @@ -4958,6 +4980,16 @@ @section Certificate @section Certificate @ftable @command address@hidden mtn cert @var{id} @var{certname} address@hidden mtn cert @var{id} @var{certname} @var{certval} + +These commands create a new certificate with name @var{certname}, for a +revision with version @var{id}. The @var{id} argument can be a selector +using certs already on the revision, such as @code{h:@var{branchname}}. + +If @var{certval} is provided, it is the value of the certificate. +Otherwise the certificate value is read from @code{stdin}. + @item mtn approve @var{id} This command is a synonym for @command{mtn cert @var{id} branch @@ -4976,6 +5008,11 @@ @section Certificate @item mtn tag @var{id} @var{tagname} +This command associates the symbolic name @var{tagname} with the +revision @var{id}, so that symbolic name can later be used in address@hidden for specifying revisions for commands like address@hidden or @command{diff}. + This command is a synonym for @command{mtn cert @var{id} tag @var{tagname}}.