On Thu, Sep 29, 2016 at 04:46:19AM -0700, Kyle J. McKay wrote: > This hint: information is excellent. There needs to be a way to show it on > demand. > > $ git rev-parse --disambiguate=b2e1 > b2e11962c5e6a9c81aa712c751c83a743fd4f384 > b2e11d1bb40c5f81a2f4e37b9f9a60ec7474eeab > b2e163272c01aca4aee4684f5c683ba341c1953d > b2e18954c03ff502053cb74d142faab7d2a8dacb > b2e1895ca92ec2037349d88b945ba64ebf16d62d > > Not nearly so helpful, but the operation of --disambiguate cannot be changed > without breaking current scripts. > > Can your excellent "hint:" output above be attached to the --disambiguate > option somehow, please. Something like this perhaps: > > $ git rev-parse --disambiguate-list=b2e1 > b2e1196 tag v2.8.0-rc1 > b2e11d1 tree > b2e1632 commit 2007-11-14 - Merge branch 'bs/maint-commit-options' > b2e1759 blob > b2e18954 blob > b2e1895c blob I think the "right" way to do this is pipe the list of sha1s into another git commit which can format them however you want. Unfortunately, there isn't a single command that does a great job: - "cat-file --batch-check" can show you the sha1 and type, but it won't abbreviate sha1s, and it won't show you commit/tag information - "log --stdin --no-walk" will format the commit however you like, but skips the trees and blobs entirely, and the tag can only be seen via "%d" - "for-each-ref" has flexible formatting, too, but wants to format refs, not objects (and doesn't read from stdin). IMHO that is a sign that our formatting tools aren't as good as they could be (I think the right tool is cat-file, but it should be able to do all of the formatting that the other commands can do). Of course if you really just want human-readable output, then: $ git cat-file -e b2e1 error: short SHA1 b2e1 is ambiguous hint: The candidates are: hint: b2e1196 tag v2.8.0-rc1 hint: b2e11d1 tree hint: b2e1632 commit 2007-11-14 - Merge branch 'bs/maint-commit-options' hint: b2e1759 blob hint: b2e18954 blob hint: b2e1895c blob fatal: Not a valid object name b2e1 is pretty easy. That being said, I don't mind if somebody wanted to do a rev-parse option on top of my series. The formatting code is already split into its own function. -Peff