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

Re: Commit-ish shortcut for immediate parent range

From
Linus Torvalds <torvalds@osdl.org>
Date
Oct 22, 2006, 17:25 UTC
Message-ID
<Pine.LNX.4.64.0610221017180.3962@g5.osdl.org>
In-Reply-To
<200610221548.42048.andyparkins@gmail.com>
On Sun, 22 Oct 2006, Andy Parkins wrote:
Show 9 quoted lines
> 
> Git's commit-ish is very powerful.  I was wondering however, if there was a 
> shortcut for (for example)?
> 
>  git-diff 3435fdb4c^..3435fdb4c
> 
> That is - the short range of a particular commit's parent to that commit; like
> 
>  git-diff 3435fdb4c!

Umm. That's not actually a very sensible operation. It's only sensible in the special case of "diff", and for that special case, what we do is to actually just say that the _command_ is special, not the range.

It's called "git show".
So the thing to do is just
	git show 3435fdb4c
and be happy.
Anyway, there's two kinds of commands wrt revision ranges in git:
 - "git diff"
 - everything else

That may sound strange, but it's true. "git diff" doesn't really do "revision ranges". It does "two revision endpoints", which is literally very different from just about any other git command. All the other commands really think of commits as a "set of individual commits" (where sometimes the "set" is admittedly just a single commit).

So the reason for you wanting that "3435fdb4c^..3435fdb4c" is not that it's a particularly useful thing in _general_, it's that "git diff" wants two endpoints, and you want to have that describe a single commit.

Hopefully this explains why it's the _command_ that is special, and not the range. The range makes no sense.

				Linus
Previous: Jakub NarebskiNext: Linus Torvalds
Message 3 of 13 in “Commit-ish shortcut for immediate parent range”
  1. Andy ParkinsOct 22, 2006
  2. Jakub NarebskiOct 22, 2006
  3. Linus TorvaldsOct 22, 2006
  4. Linus TorvaldsOct 22, 2006
  5. Andy ParkinsOct 22, 2006
  6. Linus TorvaldsOct 22, 2006
  7. Jakub NarebskiOct 22, 2006
  8. Johannes SchindelinOct 22, 2006
  9. Jakub NarebskiOct 22, 2006
  10. Junio C HamanoOct 22, 2006
  11. Linus TorvaldsOct 23, 2006
  12. Johannes SchindelinOct 22, 2006
  13. Jeff KingOct 22, 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.