prevent fold from creating merge commits with pX being an ancestor of pY
Merge request reports
Activity
added 1 commit
- 428330c94150 - fold: don't create merge commits with pX being an ancestor of pY (issue6332)
- Resolved by Anton Shestakov
added 11 commits
-
428330c9...1b5afe8b - 9 commits from branch
branch/stable
- ecb1eca8f942 - tests: prepare test-fold.t for the upcoming changes
- b096dc9cfce7 - fold: don't create merge commits with pX being an ancestor of pY (issue6332)
-
428330c9...1b5afe8b - 9 commits from branch
added 15 commits
-
b096dc9c...d55e83fa - 13 commits from branch
branch/stable
- 5670c090f8db - tests: prepare test-fold.t for the upcoming changes
- 836384d70c36 - fold: don't create merge commits with pX being an ancestor of pY (issue6332)
-
b096dc9c...d55e83fa - 13 commits from branch
added 4 commits
-
31a72d43d20f - 1 commit from branch
branch/stable
- ec6d455130ea - foldcheck: return p1 in addition to p2 for folded commits
- a357bf87b1ed - tests: prepare test-fold.t for the upcoming changes
- 7675fbb4de60 - fold: don't create merge commits with pX being an ancestor of pY (issue6332)
Toggle commit list-
31a72d43d20f - 1 commit from branch
added 2 commits
- eff014af82a9 - fold: don't create merge commits with pX being an ancestor of pY (issue6332)
- 64c9248f2c3d - fold: allow folding merge commits in a way that avoids issue6332
As far as I understand the goal of this commit is to prevent the creation of oedipus-merge through fold. However such oedipus-merge are allow in some case. For example when merging between branch. So the current check seems too harsh as I understand it.
Moreover I believe a better experience would be to simply drop the extra parent (in the case we could create an illegal oedipus-merge).
(to make things simpler, they are also people we would like to be able to create oedipus-merge).
In all case, unless I misunderstood something I don't think we should take this MR as is.
However such oedipus-merge are allow in some case. For example when merging between branch.
So if given this:
o 3: default |\ | o 2: stable | | o | 1: default |/ o 0: default
and I fold 1+3, then I should get
o 4: default |\ | o 1: stable |/ o 0: default
?
What other cases are there?
Moreover I believe a better experience would be to simply drop the extra parent (in the case we could create an illegal oedipus-merge).
Dropping one of the parents is what the last patch does.