Create a new branch

To create a branch copy trunk to branches

svn copy https://svn.syscp-ng.org/trunk  https://svn.syscp-ng.org/branches/<name of branch>

switch your workingcopy to the branch

svn switch https://svn.syscp-ng.org/branches/<branch name> .

Now start working on the branch. After the work on your branch is done, make sure to have all your changes in committed, then switch your workingcopy back to trunk

Keep your branch in sync

While you are working on the branch, trunk might get updates as well. You should make sure to keep your branch and working copy up-to-date with the trunk, since it will be a lot harder to merge your branch back later on.

svn merge --reintegrate https://svn.syscp-ng.org/trunk .

Be sure that you workingcopy is still connected to your branch

Merge a branch back into trunk

svn switch https://svn.syscp-ng.org/trunk .

To switch back to the trunk is crutial, since it is a bit confusing how to merge a branch back to trunk. We do not merge the branch back into trunk, but reintegrate the branch into the trunk. To do so

svn merge --reintegrate https://svn.syscp-ng.org/branches/<branch name> .

resolve conflicts and check everything works as expected and commit the changes to trunk. And we are done!

Clean up

Clean up everything, ie. deleting branch, branch again and work on the next feature.

svn delete https://svn.syscp-ng.org/branches/<branch name>