I read the RebaseProject page and tried a non-trivial example (without reinstalling the full branch). It is similar to rebase D in scenario I B.
Here is the situation before rebase:
default : 0 ----- 2 \ feature : 1 ----- 3
Now I would like to reinstall 3 to 2 , specifying:
default : 0 ----- 2 ----- 3 \ feature : 1
Unfortunately, the exact commands are not listed in the RebaseProject page, but from my understanding of the usage synopsis, this should be:
hg rebase --source 3 --dest 2
But for some reason, my understanding should be wrong, because I get rebase combined with merging:
default : 0 ----- 2 ----- 3 \ / feature : 1 -------
Why is this?
Commands for playing the script:
hg init touch a hg add a hg commit -m "added a" hg branch feature touch b hg add b hg commit -m "added b on feature" hg up -C default touch c hg add c hg commit -m "added c on default" hg up -C feature echo "feature" >> a hg commit -m "changed a on feature" hg rebase
source share