# # # patch "NEWS" # from [d10c8da088f4fee2dbbb13134c642e89300dd66d] # to [b0195c16dd7d40f8f0fa237f2ae39dcc386dd1f3] # # patch "monotone.texi" # from [052708a573fa282057916ea145b1b4df34c22e3c] # to [ef8a5a77add25ad77eb1c135a73b504846878ed7] # ============================================================ --- NEWS d10c8da088f4fee2dbbb13134c642e89300dd66d +++ NEWS b0195c16dd7d40f8f0fa237f2ae39dcc386dd1f3 @@ -57,15 +57,19 @@ Xxx Xxx 99 99:99:99 UTC 2010 commands such as `clone`, `automate remote` and `automate remote_stdio`. - - The following characters have been deprecated in branch names: + - The following characters have been deprecated in branch names ?,*%+{}[]!^ as they denote either meta characters in monotone's URI syntax - or in globs which are used to resolve branch patterns. - monotone now warns on the creation of branches with those - characters and gives further directions. + or are used in globs to resolve branch patterns. + Furthermore, branch names should no longer start with a dash + (-), since this character is used to denote an exclude pattern + in the aforementioned URI syntax. + monotone warns on the creation of branches which violate these + restrictions and gives further directions. + - The `import` command now keeps the created bookkeeping root if --dry-run is not specified. This makes it possible to re-use the import directory as workspace and is also more closely ============================================================ --- monotone.texi 052708a573fa282057916ea145b1b4df34c22e3c +++ monotone.texi ef8a5a77add25ad77eb1c135a73b504846878ed7 @@ -927,6 +927,8 @@ @section Branches You can see all the available branches using @command{mtn list branches}. address@hidden Heads and merging + Branches are indicated with certs. The cert name @code{branch} is reserved for use by monotone, for the purpose of identifying the revisions which are members of a branch. A @code{branch} cert has a @@ -1046,12 +1048,12 @@ @subsection Branch Names world. Otherwise, bad things can happen. Fortunately, we have a handy source of globally unique names --- the DNS system. -When naming a branch, always prepend the reversed, fully qualified, domain name of a host that -you control or are otherwise authorized to use. For example, monotone -development happens on the branch @code{net.venge.monotone}, because address@hidden belongs to monotone's primary author. The idea is that -this way, you can coordinate with other people using a host to make sure -there are no conflicts --- in the example, monotone's primary author can +When naming a branch, always prepend the reversed, fully qualified, domain +name of a host that you control or are otherwise authorized to use. For +example, monotone development happens on the branch @code{net.venge.monotone}, +because @code{venge.net} belongs to monotone's original author. The idea is +that this way, you can coordinate with other people using a host to make sure +there are no conflicts --- in the example, monotone's original author can be certain that no-one else using @code{venge.net} will start up a different program named @code{monotone}. If you work for Yoyodyne, Inc. (owners of yoyodyne.com), then all your branch names should look @@ -1061,10 +1063,23 @@ @subsection Branch Names usually the first part is the project name (the @code{monotone} in @code{net.venge.monotone}), and then possibly more stuff after that to describe a particular branch. For example, monotone's win32 support -was initially developed on the branch @code{net.venge.monotone.win32}. +was initially developed on the branch @code{net.venge.monotone.win32} +(for more information, see @ref{Naming Conventions}). -(For more information, see @ref{Naming Conventions}.) +It has to be noted that earlier versions of monotone enforced no restrictions +on branch names. Newer versions, starting with 0.99, exclude a set of control +characters though, which mostly denote either meta characters in monotone's +URI syntax or are used in globs to resolve branch patterns. These characters are address@hidden, @code{,}, @code{*}, @code{%}, @code{+}, @address@hidden, @address@hidden, @code{[}, address@hidden, @code{!} and @code{^}. Additionally, @code{-} is deprecated as first +character of a branch name, since it is used to denote branch exclude patterns +in the aforementioned URI syntax. +monotone warns on the creation of branch names which violate one of the above +restrictions and gives further directions. Future versions of monotone are +likely to enforce these restrictions by disallowing such branch names completely. + + @page @node Tutorial, Advanced Uses, Concepts, Top @chapter Tutorial