hgbook

diff en/branch.tex @ 205:c76a3e2a600c

Brief update.
author Bryan O'Sullivan <bos@serpentine.com>
date Mon Apr 23 13:52:15 2007 -0700 (2007-04-23)
parents d7615e15510f
children 6519f3b983b4
line diff
     1.1 --- a/en/branch.tex	Fri Apr 20 14:35:39 2007 -0700
     1.2 +++ b/en/branch.tex	Mon Apr 23 13:52:15 2007 -0700
     1.3 @@ -286,8 +286,26 @@
     1.4  that display the same kind of output.
     1.5  \interaction{branch-named.commit}
     1.6  The \hgcmd{log}-like commands will print the branch name of every
     1.7 -changeset that's not on the \texttt{default} branch, so if you never
     1.8 -use named branches, you'll never see this information.
     1.9 +changeset that's not on the \texttt{default} branch.  As a result, if
    1.10 +you never use named branches, you'll never see this information.
    1.11 +
    1.12 +Once you've named a branch and committed a change with that name,
    1.13 +every subsequent commit that descends from that change will inherit
    1.14 +the same branch name.
    1.15 +
    1.16 +\section{Branch names and merging}
    1.17 +
    1.18 +As you've probably noticed, merges in Mercurial are not symmetrical.
    1.19 +Let's say our repository has two heads, 17 and 23.  If I
    1.20 +\hgcmd{update} to 17 and then \hgcmd{merge} with 23, Mercurial records
    1.21 +17 as the first parent of the merge, and 23 as the second.  Whereas if
    1.22 +I \hgcmd{update} to 23 and then \hgcmd{merge} with 17, it records 23
    1.23 +as the first parent, and 17 as the second.
    1.24 +
    1.25 +This behaviour affects Mercurial's choice of branch name when you
    1.26 +merge.  During a merge, Mercurial will by default use the name of the
    1.27 +first parent.
    1.28 +
    1.29  
    1.30  %%% Local Variables: 
    1.31  %%% mode: latex