From: Felipe Contreras <felipe.contreras@gmail.com> To: git@vger.kernel.org Cc: "David Aguilar" <davvid@gmail.com>, "Junio C Hamano" <gitster@pobox.com>, "Sergey Organov" <sorganov@gmail.com>, "Bagas Sanjaya" <bagasdotme@gmail.com>, "Elijah Newren" <newren@gmail.com>, "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>, "Denton Liu" <liu.denton@gmail.com>, "Felipe Contreras" <felipe.contreras@gmail.com> Subject: [PATCH 0/7] Make diff3 the default conflict style Date: Wed, 9 Jun 2021 14:28:35 -0500 [thread overview] Message-ID: <20210609192842.696646-1-felipe.contreras@gmail.com> (raw) This patch series turned out much more complicated that simply flipping the switch and dealing with the consequences. Apparently some commands are completely ignoring the configuration (notes and merge-tree), and others are handling it wrong (checkout). So in preparation I created a new test to make sure these rowdy commands handle the configuration correctly, and then step by step I fix them. Once all the commands are fixed I proceed to cleanup xdiff-interface in preparation for the switch. And finally once the switch is flipped the documnetation is updated, and funch of test scripts receive a temporary configuration that returns them to the old "merge" (diff2) behavior so they pass with minimum changes. I have already written patches to update the tests so no configuration is needed and they parse the diff3 style directly, but the series is already quite verbose as it is. One salient thorn is that from my point of view merge_recursive_config() is implemtend wrongly and thus can't be called as other configuration functions, like git_diff_basic_config(). It seems there's a huge area of opportunity there to clean all that up, but that's for another series. Felipe Contreras (7): test: add merge style config test merge-tree: fix merge.conflictstyle handling notes: fix merge.conflictstyle handling checkout: fix merge.conflictstyle handling xdiff: rename XDL_MERGE_STYLE_DIFF3 xdiff: simplify style assignments xdiff: make diff3 the default conflictStyle Documentation/config/merge.txt | 12 +-- Documentation/git-merge-file.txt | 2 + Documentation/git-merge.txt | 28 ++---- Documentation/git-rerere.txt | 2 +- Documentation/gitattributes.txt | 6 +- Documentation/technical/rerere.txt | 3 +- Documentation/user-manual.txt | 6 +- builtin/merge-file.c | 5 +- builtin/merge-recursive.c | 3 + builtin/merge-tree.c | 4 + builtin/merge.c | 4 + builtin/notes.c | 3 +- ll-merge.c | 3 +- merge-recursive.c | 2 +- sequencer.c | 5 + t/t2023-checkout-m.sh | 2 + t/t3310-notes-merge-manual-resolve.sh | 2 + t/t3311-notes-merge-fanout.sh | 2 + t/t3404-rebase-interactive.sh | 2 + t/t3507-cherry-pick-conflict.sh | 2 + t/t4017-diff-retval.sh | 2 + t/t4048-diff-combined-binary.sh | 2 + t/t4200-rerere.sh | 2 + t/t4300-merge-tree.sh | 2 + t/t6402-merge-rename.sh | 2 + t/t6403-merge-file.sh | 2 + t/t6404-recursive-merge.sh | 2 + t/t6416-recursive-corner-cases.sh | 2 + t/t6417-merge-ours-theirs.sh | 2 + t/t6418-merge-text-auto.sh | 2 + t/t6422-merge-rename-corner-cases.sh | 2 + t/t6423-merge-rename-directories.sh | 1 + t/t6428-merge-conflicts-sparse.sh | 1 + t/t6432-merge-recursive-space-options.sh | 2 + t/t6440-config-conflict-markers.sh | 123 +++++++++++++++++++++++ t/t7201-co.sh | 2 + t/t7506-status-submodule.sh | 1 + xdiff-interface.c | 6 +- xdiff/xdiff.h | 3 +- xdiff/xmerge.c | 4 +- 40 files changed, 217 insertions(+), 46 deletions(-) create mode 100755 t/t6440-config-conflict-markers.sh -- 2.32.0.2.g41be0a4e50
next reply other threads:[~2021-06-09 19:30 UTC|newest] Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-06-09 19:28 Felipe Contreras [this message] 2021-06-09 19:28 ` [PATCH 1/7] test: add merge style config test Felipe Contreras 2021-06-09 19:42 ` Eric Sunshine 2021-06-09 20:29 ` Felipe Contreras 2021-06-10 9:18 ` Phillip Wood 2021-06-10 13:26 ` Felipe Contreras 2021-06-10 14:54 ` Phillip Wood 2021-06-10 16:34 ` Felipe Contreras 2021-06-10 14:58 ` Phillip Wood 2021-06-10 16:47 ` Felipe Contreras 2021-06-11 9:19 ` Phillip Wood 2021-06-11 14:39 ` Felipe Contreras 2021-06-09 19:28 ` [PATCH 2/7] merge-tree: fix merge.conflictstyle handling Felipe Contreras 2021-06-09 19:28 ` [PATCH 3/7] notes: " Felipe Contreras 2021-06-09 19:28 ` [PATCH 4/7] checkout: " Felipe Contreras 2021-06-10 9:32 ` Phillip Wood 2021-06-10 14:11 ` Felipe Contreras 2021-06-10 14:50 ` Phillip Wood 2021-06-10 16:32 ` Felipe Contreras 2021-06-11 9:18 ` Phillip Wood 2021-06-11 14:34 ` Felipe Contreras 2021-06-11 9:18 ` Phillip Wood 2021-06-09 19:28 ` [PATCH 5/7] xdiff: rename XDL_MERGE_STYLE_DIFF3 Felipe Contreras 2021-06-10 9:21 ` Phillip Wood 2021-06-10 13:33 ` Felipe Contreras 2021-06-11 3:17 ` Junio C Hamano 2021-06-11 13:42 ` Felipe Contreras 2021-06-09 19:28 ` [PATCH 6/7] xdiff: simplify style assignments Felipe Contreras 2021-06-10 9:26 ` Phillip Wood 2021-06-10 13:50 ` Felipe Contreras 2021-06-09 19:28 ` [PATCH 7/7] xdiff: make diff3 the default conflictStyle Felipe Contreras 2021-06-10 6:41 ` Johannes Sixt 2021-06-10 7:53 ` Đoàn Trần Công Danh 2021-06-10 13:18 ` Felipe Contreras 2021-06-10 13:18 ` Felipe Contreras 2021-06-10 13:49 ` Jeff King 2021-06-10 16:00 ` Felipe Contreras 2021-06-10 16:31 ` Jeff King 2021-06-11 1:20 ` Junio C Hamano 2021-06-11 6:23 ` Johannes Sixt 2021-06-11 6:43 ` Junio C Hamano 2021-06-11 7:02 ` Johannes Sixt 2021-06-11 7:14 ` Junio C Hamano 2021-06-11 11:51 ` Sergey Organov 2021-06-11 15:32 ` Felipe Contreras 2021-06-11 15:52 ` Sergey Organov 2021-06-11 16:36 ` Felipe Contreras [not found] ` <CABPp-BHRQSF2_aYTBfpfnW4Bh3Hz7vLFj_QNGj8R4WeCS6_utw@mail.gmail.com> 2021-06-11 17:57 ` Felipe Contreras 2021-06-11 19:02 ` Elijah Newren 2021-06-11 21:05 ` Felipe Contreras 2021-06-11 21:40 ` Elijah Newren 2021-06-13 14:34 ` Felipe Contreras 2021-06-11 16:41 ` Johannes Sixt 2021-06-11 17:21 ` Felipe Contreras 2021-06-11 17:40 ` Sergey Organov 2021-06-11 18:10 ` Felipe Contreras 2021-06-11 18:22 ` Sergey Organov 2021-06-11 14:28 ` Felipe Contreras 2021-06-11 14:25 ` Felipe Contreras 2021-06-11 16:53 ` Johannes Sixt [not found] ` <CABPp-BH0aRiSUw03nSK6jHRNQ+zcpUzr6WjeJ5GpdUCqCKxbag@mail.gmail.com> 2021-06-11 17:32 ` Felipe Contreras 2021-06-11 17:57 ` Elijah Newren 2021-06-11 18:28 ` Felipe Contreras 2021-06-11 14:20 ` Felipe Contreras 2021-06-11 14:09 ` Felipe Contreras 2021-06-10 9:40 ` Phillip Wood 2021-06-10 14:19 ` Felipe Contreras 2021-06-17 17:40 ` [PATCH 0/7] Make diff3 the default conflict style Phillip Wood 2021-06-17 18:24 ` Felipe Contreras
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style List information: http://vger.kernel.org/majordomo-info.html * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210609192842.696646-1-felipe.contreras@gmail.com \ --to=felipe.contreras@gmail.com \ --cc=avarab@gmail.com \ --cc=bagasdotme@gmail.com \ --cc=davvid@gmail.com \ --cc=git@vger.kernel.org \ --cc=gitster@pobox.com \ --cc=liu.denton@gmail.com \ --cc=newren@gmail.com \ --cc=sorganov@gmail.com \ --subject='Re: [PATCH 0/7] Make diff3 the default conflict style' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Code repositories for project(s) associated with this inbox: https://80x24.org/mirrors/git.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).