[Genabel-commits] r886 - www

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Tue Apr 3 13:11:07 CEST 2012


Author: lckarssen
Date: 2012-04-03 13:11:07 +0200 (Tue, 03 Apr 2012)
New Revision: 886

Modified:
   www/tutHowToMakeTags.html
Log:
added info on how to create branch to the howto tutorials.

Modified: www/tutHowToMakeTags.html
===================================================================
--- www/tutHowToMakeTags.html	2012-04-03 10:51:40 UTC (rev 885)
+++ www/tutHowToMakeTags.html	2012-04-03 11:11:07 UTC (rev 886)
@@ -16,7 +16,9 @@
 <p></p>
 
 Maintainers of packages (with commit rights to the SVN repo) should
-remember to make a tag when they release a new version of their package.
+remember to make a tag when they release a new version of their
+package. This way we can always go back to a specific release (e.g. to
+backport bug fixes).
 A tag is created like this:
 <p></p>
 
@@ -37,10 +39,52 @@
 <h4>
 Creating branches
 </h4>
+If you plan to make major changes to the code, especially if you think
+the development process will take a long time it is best to create a
+so-called branch. There you can work for as long as you want and
+change as much as you want without hindering the developments in the
+main svn directory (''pkg'' and its subdirectories).
 
+To create a branch first check out the latest versions from SVN (see
+<a href="tutHowToWorkWithDevelVersion.html">this tutorial</a> for more
+information). Go into that directory and into the ''branches''
+directory. There you create a subdirectory with a descriptive
+name. Then you add the directory to SVN and commit.
+<pre>
+$ cd branches
+$ mkdir GenABEL-branch-for-amazing-new-feature
+$ snv add GenABEL-branch-for-amazing-new-feature
+$ svn commit GenABEL-branch-for-amazing-new-feature \
+ -m "Added directory for the branch for a new feature of GenABEL."
+</pre>
+Now you can do the actual branching in the following way (notice the
+similarities with the tag command above):
+<pre>
+$ svn copy \
+     svn+ssh://committer-name@svn.r-forge.r-project.org/svnroot/genabel/pkg/GenABEL \
+     svn+ssh://committer-name@svn.r-forge.r-project.org/svnroot/genabel/branches/GenABEL-branch-for-amazing-new-feature/ \
+     -m "Creating actual branch for new feature in GenABEL."
+</pre>
+The ''&ltcommitter-name&gt'' is the name of your R-forge account.
 
+<p></p>
+While working on your new feature you can use ''svn commit'' etc. as
+usual to track you changes. Be sure to keep your branch also updated
+with the changes in trunk. See
+the <a href="http://svnbook.red-bean.com/en/1.7/svn.branchmerge.basicmerging.html#svn.branchemerge.basicmerging.stayinsync">SVN
+  manual</a> for details on how to do this.
+
+Once you are satisfied with your changes (and you have verified that
+they work as expected) you can merge your work with the main
+development branch (usually called trunk) in the ''pkg''
+directory. Since this can cause a lot of trouble and because it is a
+good idea to discuss large changesets on the mailing list before
+merging them back into trunk I will not go into details on how to do
+that here.
+
 <h4>
 Help
 </h4>
-If part of this process is unclear, don't hesitate to send a mail to the
-list.
+If part of these processes is unclear, don't hesitate to send a mail to the
+list. The <a href="http://svnbook.red-bean.com/en/1.7/svn.branchmerge.html">SVN
+  manual</a> has a much more detailed description on tags and branches.



More information about the Genabel-commits mailing list