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

Re: Am able to delete a file with no trace in the log

From
Linus Torvalds <torvalds@linux-foundation.org>
Date
Jun 3, 2009, 22:47 UTC
Message-ID
<alpine.LFD.2.01.0906031544170.4880@localhost.localdomain>
In-Reply-To
<7vmy8p54fr.fsf@alter.siamese.dyndns.org>
On Wed, 3 Jun 2009, Junio C Hamano wrote:
Show 11 quoted lines
> Linus Torvalds <torvalds@linux-foundation.org> writes:
> 
> > For example, right now there is _no_ way to get even a "show diff relative 
> > to first parent". You can do "-m", which will show it relative to _both_ 
> > parents, but nobody ever wants that. And you can do "-c" or "--cc", but 
> > that simplifies away all the paths that match in one. 
> 
> Actually for that "Where did my file 'x' go across the merge chain", I was
> going to suggest something like
> 
> 	git log --simplify-merges -m --raw -- x
Ok. Not very readable, but it's certainly getting closer.
Show 13 quoted lines
> > So here's a challenge: in the git repository, get a nice view of what your 
> > merges looked like. The closest I can get is
> >
> > 	git log -c --stat --grep="Merge branch '"
> >
> > which is actually very non-intuitive ("-c" on its own gives no useful 
> > output, but "-c --stat" gives nice diffstat against the first parent, 
> > which in this case is what we want).
> 
> I think the logical place to hook that into is the --first-parent option.
> 
> I actually have very hard resisted so far the temptation to do so because
> your mantra has always been "in a merge, all parents are equal." 

Oh, I agree. The challenge was just the first step - how to make it do merges in general sanely would be the issue.

Because if you do just --first-parent, then that won't even show the test-case that Graham actually had - because the missing file didn't come in from the first parent of a merge.

The challenge was mainly as a way to point out that even some fairly simple cases aren't all that simple.

		Linus
Previous: Junio C HamanoNext: Junio C Hamano
Message 24 of 26 in “Am able to delete a file with no trace in the log”
  1. Graham PerksJun 2, 2009
  2. Tony FinchJun 2, 2009
  3. Jeff KingJun 2, 2009
  4. Linus TorvaldsJun 2, 2009
  5. Sitaram ChamartyJun 3, 2009
  6. Linus TorvaldsJun 3, 2009
  7. Clean up and simplify rev_compare_tree()Linus Torvalds, Jun 3, 2009
  8. Junio C HamanoJun 3, 2009
  9. Linus TorvaldsJun 3, 2009
  10. Junio C HamanoJun 3, 2009
  11. Linus TorvaldsJun 3, 2009
  12. Linus TorvaldsJun 3, 2009
  13. Avery PennarunJun 3, 2009
  14. Junio C HamanoJun 3, 2009
  15. Linus TorvaldsJun 3, 2009
  16. Junio C HamanoJun 3, 2009
  17. Jeff KingJun 3, 2009
  18. Linus TorvaldsJun 3, 2009
  19. Jeff KingJun 3, 2009
  20. Linus TorvaldsJun 3, 2009
  21. Jeff KingJun 3, 2009
  22. Linus TorvaldsJun 4, 2009
  23. Junio C HamanoJun 4, 2009
  24. Linus TorvaldsJun 3, 2009
  25. Junio C HamanoJun 3, 2009
  26. Junio C HamanoJun 3, 2009

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.