git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 1/4] t4059: test 'diff --cc' with a change from only few parents

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 11, 2015, 20:04 UTC
Message-ID
<xmqqmw2ea0t1.fsf@gitster.dls.corp.google.com>
In-Reply-To
<1428076716-4449-2-git-send-email-max@max630.net>
Max Kirillov <max@max630.net> writes:
Show 27 quoted lines
> If `git diff --cc` is used with 2 or more parents, then
> it shows all hunks which have changed compared to at least 2 parents.
> Which is reasonable, because those places are likely places for
> conflicts, and it should be displayed how they were resolved.
> But, preliminary path filtering passes a path only it was changed
> compared to each parent. So, if a hunk which has not changed compared to
> some of parents is shown if there are more changed hunks in the file,
> but not shown if it is the only change.
>
> This looks inconsistent and for some scenarios it is desirable to show
> such changes.
>
> Add the test which demonstrates the issue.
>
> Signed-off-by: Max Kirillov <max@max630.net>
> ---
>  t/t4059-diff-cc-not-affected-by-path-filtering.sh | 108 ++++++++++++++++++++++
>  1 file changed, 108 insertions(+)
>  create mode 100755 t/t4059-diff-cc-not-affected-by-path-filtering.sh
>
> diff --git a/t/t4059-diff-cc-not-affected-by-path-filtering.sh
> b/t/t4059-diff-cc-not-affected-by-path-filtering.sh
> new file mode 100755
> index 0000000..3e6e59b
> --- /dev/null
> +++ b/t/t4059-diff-cc-not-affected-by-path-filtering.sh
> @@ -0,0 +1,108 @@
...
Show 19 quoted lines
> +	test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" >long/base &&
> +	git add long/base &&
> + test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" -e
> "s/^2/2change1/" >long/win1 &&
> +	git add long/win1 &&
> + test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" -e
> "s/^2/2change2/" >long/win2 &&
> +	git add long/win2 &&
> + test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" -e
> "s/^2/2merged/" >long/merge &&
> +	git add long/merge &&
> + test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" -e
> "/^2/d" >long/delete &&
> +	git add long/delete &&
> + test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" -e
> "s/^2/2change1/" >long/only1 &&
> +	git add long/only1 &&
> + test_seq 11 | sed -e "s/^7/7change1/" -e "s/^11/11change2/" -e
> "s/^2/2change2/" >long/only2 &&
Hmph.  Is it gmane who is munging these lines?

The other copy of this message I received in my mbox (which I read in the same MUA) does not seem to have this corruption, and I do not expect vger.kernel.org to do this kind of munging without getting yelled at by the kernel folks.

Anyway, thanks; I'll take a deeper look once I got a chance to.
Previous: Max KirillovNext: Junio C Hamano
Message 13 of 25 in “diff --cc: relax path filtering”
  1. 0/4 diff --cc: relax path filteringMax Kirillov, Apr 2, 2015
  2. 1/4 Add test for showing discarded changes with diff --ccMax Kirillov, Apr 2, 2015
  3. Junio C HamanoApr 2, 2015
  4. Max KirillovApr 3, 2015
  5. 2/4 combine-diff.c: refactor: extract insert_path()Max Kirillov, Apr 2, 2015
  6. 3/4 diff --cc: relax too strict paths pickingMax Kirillov, Apr 2, 2015
  7. Junio C HamanoApr 2, 2015
  8. 4/4 t4059: rewrite to be adaptive to hunk filteringMax Kirillov, Apr 2, 2015
  9. Jeff KingApr 2, 2015
  10. Max KirillovApr 3, 2015
  11. 0/4 diff --cc: relax path filteringMax Kirillov, Apr 3, 2015
  12. 1/4 t4059: test 'diff --cc' with a change from only few parentsMax Kirillov, Apr 3, 2015
  13. Junio C HamanoApr 11, 2015
  14. Junio C HamanoApr 11, 2015
  15. Junio C HamanoApr 11, 2015
  16. Max KirillovApr 12, 2015
  17. Junio C HamanoApr 12, 2015
  18. Max KirillovApr 14, 2015
  19. combine-diff.c: make intersect_paths() behave like hunk filteringMax Kirillov, Apr 14, 2015
  20. 2/4 combine-diff.c: refactor: extract insert_path()Max Kirillov, Apr 3, 2015
  21. Junio C HamanoApr 11, 2015
  22. 3/4 diff --cc: relax too strict paths pickingMax Kirillov, Apr 3, 2015
  23. 4/4 t4059: rewrite to be adaptive to hunk filteringMax Kirillov, Apr 3, 2015
  24. Junio C HamanoApr 12, 2015
  25. Max KirillovApr 14, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.