/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
0.436.232 by Jelmer Vernooij
Improve README.
1
This plugin provides various commands for rewriting Bazaar revisions in 
2
an automated fashion. 
3
4
It includes a 'bzr rebase' command, in the same fashion of the 
5
famous ``git rebase`` command.
0.436.2 by Jelmer Vernooij
Add stubs for testsuite, rebase-continue and rebase-abort commands.
6
0.436.8 by Jelmer Vernooij
Couple more minor fixes.
7
==========
8
How to use
9
==========
0.436.16 by Jelmer Vernooij
Some more work on maptree.
10
Simply run ``bzr rebase``, optionally specifying an upstream branch. If no 
11
branch is specified, it will use the current parent branch (which is usually 
12
what you want).
13
0.436.18 by Jelmer Vernooij
More tests, extend MapTree a bit.
14
If the rebase fails halfway through, perhaps because of conflicts 
15
replaying a revision, it will abort. When it's aborted, you can either resolve
16
the conflicts (using "bzr resolve") and run ``bzr rebase-continue`` or 
17
abort the rebase and undo all changes it's done using ``bzr rebase-abort``. 
18
The current state of the rebase can be viewed with the ``bzr rebase-todo`` 
0.436.27 by Jelmer Vernooij
Note revision property 'rebase-of', add explanation of use of pregenerated revision ids.
19
command. See "bzr help rebase" for more details.
0.436.18 by Jelmer Vernooij
More tests, extend MapTree a bit.
20
0.436.16 by Jelmer Vernooij
Some more work on maptree.
21
In the future, I hope it can also support rebasing on top of an unrelated 
22
branch.
0.436.8 by Jelmer Vernooij
Couple more minor fixes.
23
24
============
0.436.2 by Jelmer Vernooij
Add stubs for testsuite, rebase-continue and rebase-abort commands.
25
How it works
26
============
27
The plugin will start off by writing a plan for the rebase, which it 
0.436.6 by Jelmer Vernooij
Add somewhat more complex plan generation function, rebase implementation.
28
will write to .bzr/checkout/rebase-state. If the rebase is interrupted 
29
(conflicts that have to be resolved by the user) and 
0.436.2 by Jelmer Vernooij
Add stubs for testsuite, rebase-continue and rebase-abort commands.
30
needs to be continued or aborted, it will read this file to see what needs 
31
(still) needs to be done.
32
33
The rebase-state file contains the following information:
34
 * last-revision-info when the rebase was started
35
 * map of revisions that need to be replaced. In simple situations, 
0.436.4 by Jelmer Vernooij
Add some tests.
36
   this would contain the revision on top of which the rebase is taking 
37
   place and the revisions that are only on the branch that is being 
38
   rebased.
39
0.436.27 by Jelmer Vernooij
Note revision property 'rebase-of', add explanation of use of pregenerated revision ids.
40
   The map is from old revid to a tuple with new revid and new parents.
0.436.4 by Jelmer Vernooij
Add some tests.
41
42
   For example, in the following scenario:
43
44
   A -> B -> C -> D main
45
        \ -> E -> F next
46
47
   Where next would be rebased on top of main, the replace map would look 
48
   something like this:
49
50
	E -> (E', [D])
51
	F -> (F', [E'])
52
0.436.27 by Jelmer Vernooij
Note revision property 'rebase-of', add explanation of use of pregenerated revision ids.
53
The rebase plan contains the newly generated revision ids so that it is 
54
not necessary to update it after each revision that has been written 
55
because the new generated revision ids would have to be known when rewriting 
56
their children.
57
58
The 'rebase-of' revision property of newly created revisions 
59
will be set to the revision id of the revision they are a rewrite of.