# git-diff-tree updates..

1 messages from 2005-05-18 to 2005-05-18. Participants: Linus Torvalds.
Thread: https://gitlist.dev/t/653

## Linus Torvalds, 2005-05-18 20:28

Subject: git-diff-tree updates..
Message-ID: <Pine.LNX.4.58.0505181316330.18337@ppc970.osdl.org>
URL: https://gitlist.dev/e/Pine.LNX.4.58.0505181316330.18337%40ppc970.osdl.org

```

I've just fixed two annoyances of mine with git-diff-tree, which sadly 
caused me to break some syntax.

In particular, diff-tree for some unfathomable reason (probably incipient 
braindamage in yours truly) used a single dash "-" to mark the end of 
command line arguments, rather than the "--" that everybody else uses.

I hope nobody depended on it, because I fixed it.

The other thing I did was to allow a single SHA1, and then consider that 
to be equivalent to a one-line "--stdin" thing. Ie you can now do

	git-diff-tree -v -p HEAD

and it will do what you'd expect it to do, ie it should be equivalent to

	cat .git/HEAD | git-diff-tree -v -p --stdin

(apart from a silly bug which I'll fix shortly).

The latter means that if you actually want to track a _file_ named HEAD
(or anything else that might trigger as a reference), you'd need to do

	git-rev-list HEAD | git-diff-tree -v -p --stdin -- HEAD

but I'm considering making the single-dash thing be equivalent to 
the combination "--stdin", and not allow SHA1 naming after it, so that 
this could be shortened to just be

	git-rev-list HEAD | git-diff-tree -v -p - HEAD

(but I wanted to make the "-" semantics change be a two-phase thing).

		Linus

```
