bzr graft

this plugin is unmaintained, and you should expect to have to do a lot of porting to the latest API if you want to use it. Please drop me a note if you do, so I can put a link here to your new branch.

graft can be used to unify a line of development that has been spread across several branches in a single RCS, or across many RCSes, that have been interspersed with imports of the codebase, and thus have lost history. graft recreates the history of a project by reapplying the sequence of revisions in a later branch to an earlier branch.

If branch A contains a project from its inception until a point X when development stopped, and branch B contains an import of the code of the same project from point X onwards, you can use graft to concatenate branch B onto the end of branch A.

The caveat is that B must be a future version of the last revision in A. graft will do strange things if this is not the case

graft is not for regular use. You should only need it once per branch. You should use it before publishing bzr branches, otherwise other developers will have to re-branch (if they previously branched from branch B) (or they can use graft to realign their branches with the new upstream branch.

graft is available to you all under the GNU General Public License.

The latest version of the source code is kept in bazaar:

bzr get http://repo.spacepants.org/bzr/plugins/graft/>
  

Send any patches or suggestions to Jamie Wilkinson