hgbook
diff en/ch06-collab.xml @ 567:8fcd44708f41
Uncomment all the mangled interaction examples.
author | Bryan O'Sullivan <bos@serpentine.com> |
---|---|
date | Mon Mar 09 23:22:09 2009 -0700 (2009-03-09) |
parents | 21c62e09b99f |
children | 13513d2a128d |
line diff
1.1 --- a/en/ch06-collab.xml Thu Mar 05 21:52:23 2009 +0200 1.2 +++ b/en/ch06-collab.xml Mon Mar 09 23:22:09 2009 -0700 1.3 @@ -200,45 +200,63 @@ 1.4 1.5 <para>Here's an example of how this can work in practice. Let's 1.6 say you have one <quote>main branch</quote> on a central 1.7 - server. <!-- &interaction.branching.init; --> People clone it, 1.8 - make changes locally, test them, and push them back.</para> 1.9 + server.</para> 1.10 + 1.11 + &interaction.branching.init; 1.12 + 1.13 + <para>People clone it, make changes locally, test them, and push 1.14 + them back.</para> 1.15 1.16 <para>Once the main branch reaches a release milestone, you can 1.17 use the <command role="hg-cmd">hg tag</command> command to 1.18 - give a permanent name to the milestone revision. <!-- 1.19 - &interaction.branching.tag; --> Let's say some ongoing 1.20 - development occurs on the main branch. <!-- 1.21 - &interaction.branching.main; --> Using the tag that was 1.22 - recorded at the milestone, people who clone that repository at 1.23 - any time in the future can use <command role="hg-cmd">hg 1.24 - update</command> to get a copy of the working directory 1.25 - exactly as it was when that tagged revision was committed. 1.26 - <!-- &interaction.branching.update; --></para> 1.27 + give a permanent name to the milestone revision.</para> 1.28 + 1.29 + &interaction.branching.tag; 1.30 + 1.31 + <para>Let's say some ongoing 1.32 + development occurs on the main branch.</para> 1.33 + 1.34 + &interaction.branching.main; 1.35 + 1.36 + <para>Using the tag that was recorded at the milestone, people 1.37 + who clone that repository at any time in the future can use 1.38 + <command role="hg-cmd">hg update</command> to get a copy of 1.39 + the working directory exactly as it was when that tagged 1.40 + revision was committed.</para> 1.41 + 1.42 + &interaction.branching.update; 1.43 1.44 <para>In addition, immediately after the main branch is tagged, 1.45 someone can then clone the main branch on the server to a new 1.46 - <quote>stable</quote> branch, also on the server. <!-- 1.47 - &interaction.branching.clone; --></para> 1.48 + <quote>stable</quote> branch, also on the server.</para> 1.49 + 1.50 + &interaction.branching.clone; 1.51 1.52 <para>Someone who needs to make a change to the stable branch 1.53 can then clone <emphasis>that</emphasis> repository, make 1.54 - their changes, commit, and push their changes back there. <!-- 1.55 - &interaction.branching.stable; --> Because Mercurial 1.56 - repositories are independent, and Mercurial doesn't move 1.57 - changes around automatically, the stable and main branches are 1.58 - <emphasis>isolated</emphasis> from each other. The changes 1.59 - that you made on the main branch don't <quote>leak</quote> to 1.60 - the stable branch, and vice versa.</para> 1.61 + their changes, commit, and push their changes back there.</para> 1.62 + 1.63 + &interaction.branching.stable; 1.64 + 1.65 + <para>Because Mercurial repositories are independent, and 1.66 + Mercurial doesn't move changes around automatically, the 1.67 + stable and main branches are <emphasis>isolated</emphasis> 1.68 + from each other. The changes that you made on the main branch 1.69 + don't <quote>leak</quote> to the stable branch, and vice 1.70 + versa.</para> 1.71 1.72 <para>You'll often want all of your bugfixes on the stable 1.73 branch to show up on the main branch, too. Rather than 1.74 rewrite a bugfix on the main branch, you can simply pull and 1.75 merge changes from the stable to the main branch, and 1.76 - Mercurial will bring those bugfixes in for you. <!-- 1.77 - &interaction.branching.merge; --> The main branch will still 1.78 - contain changes that are not on the stable branch, but it will 1.79 - also contain all of the bugfixes from the stable branch. The 1.80 - stable branch remains unaffected by these changes.</para> 1.81 + Mercurial will bring those bugfixes in for you.</para> 1.82 + 1.83 + &interaction.branching.merge; 1.84 + 1.85 + <para>The main branch will still contain changes that are not on 1.86 + the stable branch, but it will also contain all of the 1.87 + bugfixes from the stable branch. The stable branch remains 1.88 + unaffected by these changes.</para> 1.89 1.90 </sect2> 1.91 <sect2>