Author: pfg Date: Thu Jun 7 04:07:54 2012 New Revision: 1347379 URL: http://svn.apache.org/viewvc?rev=1347379&view=rev Log: Add section on Merging Changes
Modified: incubator/ooo/site/trunk/content/openofficeorg/svn-basics.mdtext Modified: incubator/ooo/site/trunk/content/openofficeorg/svn-basics.mdtext URL: http://svn.apache.org/viewvc/incubator/ooo/site/trunk/content/openofficeorg/svn-basics.mdtext?rev=1347379&r1=1347378&r2=1347379&view=diff ============================================================================== --- incubator/ooo/site/trunk/content/openofficeorg/svn-basics.mdtext (original) +++ incubator/ooo/site/trunk/content/openofficeorg/svn-basics.mdtext Thu Jun 7 04:07:54 2012 @@ -286,6 +286,62 @@ Create the patch file from `svn diff` wh svn diff > your-patch-name.patch +## <a id="merging_changes"></a>Merging changes to a branch + +New development is done in the trunk of the tree. With few exceptions you do **NOT** do direct commits to the stable +branches: you normally only commit your changes to the stable branch after other developers have been +given enough time to test the changes don't break anything in the trunk. SVN also keeps a record +of the specific commit that have been merged so the changes are much easier to track down. + +In case there are impending security issues, or if the code in the branch has diverged significantly to the +code in the trunk you may commit the code directly but it is a good idea to let +other developers know about such changes. + +The first step is to do a check out of the specific branch. You can do a complete +checkout or you can save some space by using the "--depth=empty" option: + + % svn co --depth=empty https://svn.apache.org/repos/asf/incubator/ooo/branches/AOO34 aoo-stable + U aoo-stable + Checked out revision 1347362. + +You can keep saving space (rather convenient) until you reach the directory where you want to make changes: + + % svn up --depth=empty main + Updating 'main': + A main + Updated to revision 1347363. + % svn up --depth=empty jvmfwk + Updating 'jvmfwk': + A jvmfwk + Updated to revision 1347366. + +And do a complete checkout from there: + svn up --set-depth=infinity + Updating '.': + A source + A source/elements.hxx + A source/fwkbase.cxx + ... (and so on) + +Now merge the specific revision(s) you want, in this case 1333165: + + svn merge -c1333165 https://svn.apache.org/repos/asf/incubator/ooo/trunk/main/jvmfwk . + --- Merging r1333165 into '.': + U distributions/OpenOfficeorg/javavendors_unx.xml + +After you finish merging check your changes with "svn status" and "svn diff" +and commit: + + svn commit -m "Merge r1329539, r1329547, 1333165 - Add Oracle as a Java vendor on unix." distributions/OpenOfficeorg/javavendors_unx.xml distributions/OpenOfficeorg/javavendors_freebsd.xml + Sending distributions/OpenOfficeorg/javavendors_freebsd.xml + Sending distributions/OpenOfficeorg/javavendors_unx.xml + Transmitting file data .. + Committed revision 1347377. + +You usually don't need to apply patches or add new files to merge your changes, instead you use the "svn merge" +command which finds out the specific changes and replays them. + + ## <a id="further_information"></a>Further Information For more information see: