Thread (10 messages) 10 messages, 7 authors, 2018-04-11

Re: What's cooking in git.git (Apr 2018, #01; Mon, 9)

From: Johannes Schindelin <hidden>
Date: 2018-04-09 20:14:18

Hi Junio,

On Mon, 9 Apr 2018, Junio C Hamano wrote:
* js/rebase-recreate-merge (2018-02-23) 12 commits
  (merged to 'next' on 2018-03-15 at 3d1671756f)
 + rebase -i: introduce --recreate-merges=[no-]rebase-cousins
 + pull: accept --rebase=recreate to recreate the branch topology
 + sequencer: handle post-rewrite for merge commands
 + sequencer: make refs generated by the `label` command worktree-local
 + rebase: introduce the --recreate-merges option
 + rebase-helper --make-script: introduce a flag to recreate merges
 + sequencer: fast-forward merge commits, if possible
 + sequencer: introduce the `merge` command
 + sequencer: introduce new commands to reset the revision
 + git-rebase--interactive: clarify arguments
 + sequencer: make rearrange_squash() a bit more obvious
 + sequencer: avoid using errno clobbered by rollback_lock_file()

 "git rebase" learned "--recreate-merges" to transplant the whole
 topology of commit graph elsewhere.

 This serise has been reverted out of 'next', expecting that it will
 be replaced by a reroll on top of a couple of topics by Phillip.
Sorry, it took a little longer. I did decide in the end that
--rebase-merges is a better name for the option.

And I worked on the add-on patch series, too, mainly to prove that we can
switch to a better strategy than blindly re-create recursive merges from
scratch. That part is not really done to my satisfaction, though: while I
already demonstrated that Sergey's approach causes way too many merge
conflicts to be useful in practice, I now have a reproducer to show that
even Phillip's strategy *can* cause awful (and avoidable) merge conflicts.

For anybody who is interested in the specifics, I'd like to point you to
the `sequencer-shears` branch thicket in https://github.com/dscho/git (it
is a moving target, but you should find the commit called "t3430: add some
realistic tests for --rebase-merges" that demonstrates the issues.

Be that as it may, I will send out a new iteration of the patch series
(the --rebase-merges one, formerly known as --recreate-merges) soon
(hopefully still today).

Ciao,
Dscho
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help