Branching
Simply make a copy
$ svn checkout http://svn.example.com/repos/calc bigwc A bigwc/trunk/ A bigwc/trunk/Makefile A bigwc/trunk/integer.c A bigwc/trunk/button.c A bigwc/branches/ Checked out revision 340.
$ cd bigwc $ svn copy trunk branches/my-calc-branch $ svn status A + branches/my-calc-branch
and then commit the new branch:
$ svn commit -m "Creating a private branch of /calc/trunk." Adding branches/my-calc-branch Committed revision 341.
Thats it. Change into the branch directory and work there.
Merging
First get the revision where the branch was copied from
cd /HefeWeizen/branches/responsibilities-refactore-branch
and then look at the log:
/HefeWeizen/branches/responsibilities-refactore-branch$ svn log --stop-on-copy https://svn.havanawave.com:443/svn/HefeWeizen/branches/responsibilities-refactore-branch ------------------------------------------------------------------------ r259 | sacha | 2006-12-19 22:04:58 +0100 (Die, 19 Dez 2006) | 1 line moved most of the business logic out of big ania, out of b2b party and all into the BusinessLogicManager ------------------------------------------------------------------------ r258 | sacha | 2006-12-19 15:44:20 +0100 (Die, 19 Dez 2006) | 1 line New branch to refactor the responsiblities big_ania, b2bsystem, ebMSMesageManager ------------------------------------------------------------------------
This tells that the revion r258 was copied.
Now go back into trunk
cd /HefeWeizen/trunk/
and get to the latest revision in trunk.
t/HefeWeizen/trunk$ svn update Revision 259.
This means that we have to merge everything between the revisions 258 and 259 into trunk:
/HefeWeizen/trunk$ svn merge -r258:259 https://svn.havanawave.com:443/svn/HefeWeizen/branches/responsibilities-refactore-branch U src/hefeweizen_library_cpa.rb U src/hefeweizen_big_ania.rb A src/hefeweizen_library_business_logic.rb U src/hefeweizen_library_b2b_system.rb U src/hefeweizen_library_ebMS_message2.rb U src/taskers/hefeweizen_tasker_application_http_server.rb U bin/run-command-center.rb
Thats it.
