[svnbook commit] r3204 - trunk/src/en/book

sussman noreply at red-bean.com
Sat Jul 19 20:44:48 CDT 2008

Author: sussman
Date: Sat Jul 19 20:44:48 2008
New Revision: 3204

* ch04: Clarify that after a --reintegrate, a branch is useless and should be destroyed/recreated.


Modified: trunk/src/en/book/ch04-branching-and-merging.xml
--- trunk/src/en/book/ch04-branching-and-merging.xml	(original)
+++ trunk/src/en/book/ch04-branching-and-merging.xml	Sat Jul 19 20:44:48 2008
@@ -773,13 +773,9 @@
         tree:  the resulting difference is exactly your branch
-      <para>Now that your branch is merged to trunk, you have a couple
-        of options.  You can keep working on your branch, repeating
-        the whole process of occasionally syncing with the trunk and
-        eventually using <option>--reintegrate</option> to merge it
-        back again.  Or, if you're really done with the branch, you
-        can destroy your working copy of it and then remove it from
-        the repository:</para>
+      <para>Now that your private branch is merged to trunk, you can
+        destroy your working copy of it and then remove it from the
+        repository:</para>
 $ svn delete http://svn.example.com/repos/calc/branches/my-calc-branch \
@@ -799,6 +795,35 @@
         at some point, should you desire (see
         <xref linkend="svn.branchmerge.basicmerging.resurrect"/>).</para>
+      <para>At the time of writing (Subversion 1.5), once
+        a <option>--reintegrate</option> is done from branch to trunk,
+        the branch is no longer usable for further work.  It's not
+        able to correctly absorb new trunk changes, nor can it be
+        properly integrated to trunk again.  For this reason, if you
+        want to keep working on your feature branch, we recommend
+        destroying it and then re-creating it from the trunk:</para>
+      <screen>
+$ svn delete http://svn.example.com/repos/calc/branches/my-calc-branch \
+      -m "Remove my-calc-branch."
+Committed revision 392.
+$ svn copy http://svn.example.com/repos/calc/trunk \
+           http://svn.example.com/repos/calc/branches/new-branch
+      -m "Create a new branch from trunk."
+Committed revision 393.
+$ cd my-calc-branch
+$ svn switch http://svn.example.com/repos/calc/branches/new-branch
+Updated to revision 393.
+      <para>The final command in the prior example —<command>svn
+      switch</command>— is a way of updating an existing working
+      copy to reflect a different repository directory.  We'll discuss
+      this more in <xref linkend="svn.branchmerge.switchwc"/>.</para>
     <!-- =============================================================== -->

More information about the svnbook-dev mailing list