# HG changeset patch # User Glenn Morris # Date 1295128066 28800 # Node ID d074b0e8afefda203ed558106cc48b271dea8ed9 # Parent 108035eb74dc648bb0232611b9a26dfb344671d3 * admin/notes/bzr: Add an idiot's guide to merging between branches. diff -r 108035eb74dc -r d074b0e8afef admin/notes/bzr --- a/admin/notes/bzr Sat Jan 15 12:05:29 2011 +0000 +++ b/admin/notes/bzr Sat Jan 15 13:47:46 2011 -0800 @@ -38,3 +38,32 @@ yet another fun excursion into the exciting world of version control. http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00086.html + +* How to merge changes from emacs-23 to trunk + +The following description uses bound branches, presumably it works in +a similar way with unbound ones. + +1) Get clean, up-to-date copies of the emacs-23 and trunk branches. +Check for any uncommitted changes with bzr status. + +2) M-x cd /path/to/trunk + +3) load admin/bzrmerge.el + +4) M-x bzrmerge RET /path/to/emacs-23 RET + +It will prompt about revisions that should be skipped, based on the +regexp in bzrmerge-missing. If there are more revisions that you know +need skipping, you'll have to do that by hand. + +5) It will stop if there are any conflicts. Resolve them. +Using smerge-mode, there are menu items to skip to the next conflict, +and to take either the trunk, branch, or both copies. + +6) After resolving all conflicts, you might need to run the command +again if there are more revisions still to merge. +You can commit either before you do this (eg if you had a lot of +conflicts to resolve and don't want to get confused), or refrain from +committing until bzrmerge has merged all revisions. +