This post should serve as a quick example of how to do a large svn branch-to-trunk merge. We utilize Assembla as our repository host for all of our products.
The Process
1. Find the revision number at which the branch was created. To do this, navigate to a working copy of the branch and run the following command.
svn log --stop-on-copy
This should display all the revisions made to that branch. However, we are only interested in the revision that created the branch. That revision should be the last on the list.
2. Get an updated working copy of the trunk.
svn checkout https://server/path/to/trunk
3. Compare the branch changes with the trunk and apply those changes to the trunk working copy. X being the revision number we found in Step 1.
svn merge -r X:HEAD https://server/path/to/branch/branch1
4. Check the status of the modified working copy.
svn status
5. Commit the changes to the trunk.
svn commit -m 'Merged branch1 changes from X:Y into trunk'
On A Side Note…
I initially attempted Step 3 using https but found that I kept receiving an error. The error text contained the following:
Could not read chunk size: Secure connection truncated
I changed up the merge command to use http instead of https and the command ran through just fine after that.