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

[RFD] diff-tree -c (not --cc) in diff-raw format?

From
Junio C Hamano <junkio@cox.net>
Date
Feb 4, 2006, 00:18 UTC
Message-ID
<7vfyn0asdd.fsf@assigned-by-dhcp.cox.net>
The second paragraph from this log caught my attention:
    commit cb80775b530a8a340a7f9e4fecc8feaaac13777c
    Author: Marco Costalba <mcostalba@gmail.com>
    Date:   Sun Jan 29 12:27:34 2006 +0100
        Use git-diff-tree -c (combined) option to retrieve merge's
        file list
        Change un-interesting files pruning algorithm to use native
        git-diff-tree -c option when showing merge files in files
        list box.

The current diff-tree -c is rather expensive way to do this. I made both -c and --cc to always produce patches, but this suggests at least qgit would benefit if I allow -c in diff-raw format. Essentially, you are interested in paths that the results do not match _any_ of the parents.

So instead of 70 lines output from
	$ git-diff-tree -m -r --abbrev v1.0.0
I could give you:
        $ git-diff-tree -c -m -r --abbrev v1.0.0
        c2f3bf071ee90b01f2d629921bb04c4f798f02fa
        :100644 100644 92cfee4... e9bf860... M	Makefile
        :100644 100644 d36904c... 4fa6c16... M	debian/changelog
        c2f3bf071ee90b01f2d629921bb04c4f798f02fa
        :100644 100644 50392ff... e9bf860... M	Makefile
        :100644 100644 376f0fa... 4fa6c16... M	debian/changelog
or even:
        $ git-diff-tree -c -m -r --name-only v1.0.0
        c2f3bf071ee90b01f2d629921bb04c4f798f02fa
        Makefile
        debian/changelog

I am not so sure which one is more useful, though. What do you think?

On the other hand, git-diff-tree --cc needs to look at the diff between result and parents of the merge in order to do its job hunk-per-hunk, so producing diff-raw output fundamentally does not make sense for that option.

I should keep track of qgit repository more often but I haven't been doing so because the site used to be almost unpullable over http (it seems to work just fine these days so it is not an excuse for me anymore) and I do not read C++ too well (bad excuse perhaps but still an excuse for me).

Next: Marco Costalba
Message 1 of 3 in “[RFD] diff-tree -c (not --cc) in diff-raw format?”
  1. Junio C HamanoFeb 4, 2006
  2. Marco CostalbaFeb 4, 2006
  3. Junio C HamanoFeb 4, 2006

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.