> > > > +--onto=<base>::
> > > > + Checkout given commit or branch before sequencing.
> > > > + If you provide a branch, sequencer will make the provided
> > > > + changes on the branch, i.e. the branch will be changed.
> > >
> > > Whoa, does that mean that
> > >
> > > $ git checkout my-private-branch
> > > $ git sequencer --onto=master
> > >
> > > will change _master_?
> > Exactly.
> /me does not like that. I could see a new porcelain doing that, but not
> the thing that will be called by rebase.
$ git sequencer --onto=master todofile
is equal to:
$ git checkout $(git rev-parse master) # detached HEAD
$ git sequencer todofile
And when successfully finished:
$ git update-ref refs/heads/master HEAD # reattach branch
Yet this seemed to be useful.
(But perhaps the name --onto is wrong...)
> > > > + --include-merges;;
> > > > + Sanity check does not fail if you have merges
> > > > + between HEAD and <mark>.
> > >
> > > It may be a commit, too, right? And why does it make sense to check that
> > > there are no merges? I mean, it is just as if I did two cherry-picks, the
> > > second with -n, and then commit --amend it. Can make tons of sense...
> > I think I mean something different. With "merges" I am talking about
> > commits having more than one parent.
> Yes, I read "merges" the same way. My comment still stands.
If you really mean that it's the same as doing two cherry-picks and
squashing the second into the first, I don't get what your comment has
in common with merges.
If you mean squashing a merge and some cherry-picks on top of that merge
into one merge commit: that is possible. It's only checked that no merges
are *in between* currently.