Re: pull --preserve-merges
Replying to both Johannes and Francis...
Show 9 quoted lines
> > > Awhile ago I brought up wanting to have a "rebase with preserve merges"
> > > option for `git pull`
> >
> > That might be something you want, but you cannot call it
> >
> > git pull --preserve-merges
> >
> > since everybody used to "pull = fetch && merge" would go "Huh? A merge
> > _does_ preserve merges".
Ah, right, sorry, Johannes, I know it only makes sense in the context if --rebase is also being in use, I was just being too brief.
> > If at all, you could call it "--rebase=preserve-merges".
I'd be fine with that, I had not thought of it.
> Why not --rebase --keep-merges? Personnally, I think it makes things clearer
> since in general options are either standalone or have a value.
I originally had --rebase --preserve-merges in mind because it matches the existing -p/--preserve-merges flag that git rebase has that I'd like git pull to just pass along.
If they were separate flags, passing just --preserve-merges without --rebase should likely report an error. Probably the same thing if someone sets `branch.name.preservemerges` but `branch.name.rebase` is not set.
Unless instead of separate config parameters, `branch.name.rebase` uses Johannes's suggestion and has separate values...true or false or preserve-merges. That would probably better parallelize with the --rebase=preserve-merges style command line argument.
Between one flag/config parameter or two flags/config parameters, I could go either way and would be willing to patch together either one to get it in.
Thanks, Stephen