"Avery Pennarun" [off-list ref] writes:
Speaking just for myself, I would find this all a lot less confusing
if "staged" were a refspec of some sort, not an option at all.
git diff HEAD..STAGED
git diff STAGED..WORKTREE
git grep pattern STAGED HEAD sillybranch WORKTREE ^ignorebranch --
path/to/files
Another thing that seems strange to me is that the operation of diffing
HEAD..STAGED is so verbose -- currently it's "git diff --cached", with
no short option.
Surely this is very common operation... I rather often want to see
details of what's staged for commit...
-Miles
--
If you can't beat them, arrange to have them beaten. [George Carlin]