Junio C Hamano wrote: > Jonathan Nieder <jrnieder@xxxxxxxxx> writes: >> In other words, I want the input format and output format completely >> decoupled. > > I thought that the original suggestion was to use "hashname:" as a > prefix to specify input format. In other words > > sha1:abababab > sha256:abababab That's fine with me too, and it's probably easier to understand than ^{sha1}. The disadvantage is that it clashes with existing meaning of "path abababab in branch sha1". If we're okay with that change, then it's a good syntax. If we have a collection of proposed syntaxes, I can get some help from a UI designer here, too, to help find any ramifications we've missed. [...] > I do not think ^{hashname} mixes well with ^{objecttype} syntax at > all as an output specifier, either. It would make sense to be more > explicit, I would think, e.g. > > git rev-parse --output=sha1 sha256:abababab Agreed. I don't think it makes sense to put output specifiers in revision names. It would create a lot of unnecessary complexity and ambiguity. Thanks, Jonathan