Re: [PATCH 2/5] Add git-sequencer documentation

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH 2/5] Add git-sequencer documentation

Stephan Beyer
Hi,

Johannes Schindelin wrote:

> > > > +--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.

In graphics: squashing

           ..--M--X--Y-                   ..-A--M--X--Y
              /                                /
           ..-                              ..-

            is allowed                 is only allowed with
                                       --include-merges

Regards.

--
Stephan Beyer <[hidden email]>, PGP 0x6EDDD207FCC5040F
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html