From: Toon Claes Date: Mon, 09 Feb 2026 06:19:35 GMT Subject: Re: [PATCH RFC] graph: implement git-log(1) --untangle Message-ID: <87jywmqw08.fsf@iotcl.com> In-Reply-To: Junio C Hamano writes: > Toon Claes writes: > >> I would argue the problem here are not the merge commits, but it's the >> way this is displayed. > > I am curious, as anybody else who has read this message up to this > point, how your --untangle option improves the same section of the > history you drew above (which I did not include). I didn't want to clutter my email with a lot of examples, I would rather have people give it a try. But since you asked. Without --untangle: * 67ad42147a (tag: v2.53.0, origin/master, origin/maint, origin/HEAD, master) Git 2.53 * 6f328bc9e3 Merge tag 'l10n-2.53.0-v1' of https://github.com/git-l10n/git-po |\ | * 532543fa46 Merge branch 'jx/zh_CN' of github.com:jiangxin/git | |\ | | * eb816ef79e l10n: zh_CN: standardize glossary terms | | * 3065daed59 l10n: zh_CN: updated translation for 2.53 | | * eb3cfc6b2f l10n: zh_CN: fix inconsistent use of standard vs. wide colons | * | 5a83d800f3 Merge branch 'l10n/zh-TW/git-2-53' of github.com:l10n-tw/git-po | |\ \ | | * | b47610d61d l10n: zh_TW.po: update Git 2.53 translation | * | | e996719801 Merge branch 'po-id' of github.com:bagasme/git-po | |\ \ \ | | * | | 6ef4d11472 l10n: po-id for 2.53 | | |/ / | * | | 8ef65d7efd Merge branch 'l10n-ga-2.53' of github.com:aindriu80/git-po | |\ \ \ | | * | | d534a373e7 l10n: ga.po: Fix git-po-helper warnings | | * | | 0c19f7f950 l10n: ga.po: Update Irish translation for Git 2.53 | * | | | b386b3aea7 Merge branch 'master' of github.com:alshopov/git-po | |\ \ \ \ | | * | | | 06045e3984 l10n: bg.po: Updated Bulgarian translation (6091t) | * | | | | af1a298e2c Merge branch 'fr_2.53' of github.com:jnavila/git | |\ \ \ \ \ | | * | | | | 72dd507505 l10n: fr: v2.53 | | | |_|/ / | | |/| | | | * | | | | 6f75c474d7 Merge branch 'tr-l10n' of github.com:bitigchi/git-po | |\ \ \ \ \ | | * | | | | d63adbbbd5 l10n: tr: Update Turkish translations | | |/ / / / | * | | | | 3eaaa7fea4 Merge branch 'master' of github.com:nafmo/git-l10n-sv | |\ \ \ \ \ | | |_|_|_|/ | |/| | | | | | * | | | cba7353aed l10n: sv.po: Update Swedish translation * | | | | | 239b7f686c RelNotes: fully spell negation * | | | | | 2258446484 RelNotes: correct "fast-import" option name |/ / / / / * | | | | ea717645d1 RelNotes: a few spelling fixes * | | | | ab380cb80b (tag: v2.53.0-rc2) Git 2.53-rc2 | |/ / / |/| | | * | | | ab689ea7f9 Revert "Merge branch 'cs/rebased-subtree-split'" * | | | 6959eee16e Merge branch 'master' of https://github.com/j6t/git-gui With --untangle: * 67ad42147a (tag: v2.53.0, origin/master, origin/maint, origin/HEAD, master) Git 2.53 * 6f328bc9e3 Merge tag 'l10n-2.53.0-v1' of https://github.com/git-l10n/git-po |\ | * 532543fa46 Merge branch 'jx/zh_CN' of github.com:jiangxin/git | |\ | | * eb816ef79e l10n: zh_CN: standardize glossary terms | | * 3065daed59 l10n: zh_CN: updated translation for 2.53 | | * eb3cfc6b2f l10n: zh_CN: fix inconsistent use of standard vs. wide colons | * 5a83d800f3 Merge branch 'l10n/zh-TW/git-2-53' of github.com:l10n-tw/git-po | |\ | | * b47610d61d l10n: zh_TW.po: update Git 2.53 translation | * e996719801 Merge branch 'po-id' of github.com:bagasme/git-po | |\ | | * 6ef4d11472 l10n: po-id for 2.53 | * 8ef65d7efd Merge branch 'l10n-ga-2.53' of github.com:aindriu80/git-po | |\ | | * d534a373e7 l10n: ga.po: Fix git-po-helper warnings | | * 0c19f7f950 l10n: ga.po: Update Irish translation for Git 2.53 | * b386b3aea7 Merge branch 'master' of github.com:alshopov/git-po | |\ | | * 06045e3984 l10n: bg.po: Updated Bulgarian translation (6091t) | * af1a298e2c Merge branch 'fr_2.53' of github.com:jnavila/git | |\ | | * 72dd507505 l10n: fr: v2.53 | * 6f75c474d7 Merge branch 'tr-l10n' of github.com:bitigchi/git-po | |\ | | * d63adbbbd5 l10n: tr: Update Turkish translations | * 3eaaa7fea4 Merge branch 'master' of github.com:nafmo/git-l10n-sv | * cba7353aed l10n: sv.po: Update Swedish translation * 239b7f686c RelNotes: fully spell negation * 2258446484 RelNotes: correct "fast-import" option name * ea717645d1 RelNotes: a few spelling fixes * ab380cb80b (tag: v2.53.0-rc2) Git 2.53-rc2 * ab689ea7f9 Revert "Merge branch 'cs/rebased-subtree-split'" * 6959eee16e Merge branch 'master' of https://github.com/j6t/git-gui >> There are still some bugs in this implementation. And a bunch of memory >> leaks. Also am I not sold on the name `--untangle`. It sounds catchy, >> but it's name isn't very meaningful for most users. I've been thinking >> about `--ignore-merge-base` or `disconnect-merge-base`, but I'm open to >> better suggestions. That's why I'm submitting this as a RFC. Before I >> continue work on this, I'm curious if the project is open to such >> contribution? And if so, which direction it should go? > > In any case, I am very happy to see another person who is not afraid > of our C codebase to have looked at this part of the system (I have > a long-standing pet peeve, unrelated to this issue, in this area). I'm happy to learn more about those pet peeves. git-log(1) --graph could definetily use some love. -- Cheers, Toon