threads / discuss / 41941

log --pretty accepts incomplete pre-defined formats

Subject: log --pretty accepts incomplete pre-defined formats

## tl;dr

4 messages between Apr 6, 2016 and Apr 6, 2016.

replies: 3people: 3as markdown or json

Sidhant Sharma· Apr 6, 2016, 06:13 UTC · lore
Hi,

Recently while playing around with git log, I realized that it is possible to pass incomplete (pre-defined) format names. For example, it is possible to use `git log --pretty=one` instead of oneline and it would still output the logs in oneline formatting. Same goes for other formats such as 'raw', 'short' and others. I looked at the code and it seems that it is intentionally kept so. It this so? I'm curious to know the reason behind keeping this so.

Thanks and regards, Sidhant Sharma

Junio C Hamano· Apr 6, 2016, 15:15 UTC · re: Sidhant Sharma · lore

Re: log --pretty accepts incomplete pre-defined formats

Sidhant Sharma <tigerkid001@gmail.com> writes:
Show 6 quoted lines
> Recently while playing around with git log, I realized that it is possible to
> pass incomplete (pre-defined) format names. For example, it is possible to use
> `git log --pretty=one` instead of oneline and it would still output the logs in
> oneline formatting. Same goes for other formats such as 'raw', 'short' and others.
> I looked at the code and it seems that it is intentionally kept so. It this so?
> I'm curious to know the reason behind keeping this so.

I actually am curious why somebody wants to know, as more modern parts of the system allow option names abbreviated to unique prefixes. "Why can't I say 'log --pret=oneline' when I can say 'commit --ame'?" might be a more plausible puzzlement (and the answer is "hysterical raisins"). Anyway, this seems to come from 6cdfd179 (commit: allow --pretty= args to be abbreviated, 2006-05-14), which was slightly tightend by aacd404e (Fix some documentation typos and grammar, 2007-02-02).

Eric Wong· Apr 6, 2016, 21:03 UTC · re: Junio C Hamano · lore

Re: log --pretty accepts incomplete pre-defined formats

Junio C Hamano <gitster@pobox.com> wrote:
Show 16 quoted lines
> Sidhant Sharma <tigerkid001@gmail.com> writes:
> 
> > Recently while playing around with git log, I realized that it is possible to
> > pass incomplete (pre-defined) format names. For example, it is possible to use
> > `git log --pretty=one` instead of oneline and it would still output the logs in
> > oneline formatting. Same goes for other formats such as 'raw', 'short' and others.
> > I looked at the code and it seems that it is intentionally kept so. It this so?
> > I'm curious to know the reason behind keeping this so.
> 
> I actually am curious why somebody wants to know, as more modern
> parts of the system allow option names abbreviated to unique
> prefixes.  "Why can't I say 'log --pret=oneline' when I can say
> 'commit --ame'?" might be a more plausible puzzlement (and the
> answer is "hysterical raisins").  Anyway, this seems to come from
> 6cdfd179 (commit: allow --pretty= args to be abbreviated,
> 2006-05-14),

Yes, being able to abbreviate 'raw', 'short', etc is intentional to save keystrokes since I was suffering from RSI at the time.

Being able to do "--pret=r" would be nice nowadays if the parsing in revision.c were modernized. However, the completions in contrib/ also expands "--pretty=" nowadays, so now I care less about shorthand options.

> which was slightly tightend by aacd404e (Fix some
> documentation typos and grammar, 2007-02-02).
Huh?
Junio C Hamano· Apr 6, 2016, 21:07 UTC · re: Eric Wong · lore

Re: log --pretty accepts incomplete pre-defined formats

On Wed, Apr 6, 2016 at 2:03 PM, Eric Wong <normalperson@yhbt.net> wrote:
>> which was slightly tightend by aacd404e (Fix some
>> documentation typos and grammar, 2007-02-02).
>
> Huh?
Huh indeed.
b6936205 (Disallow invalid --pretty= abbreviations, 2007-02-02)
was what I meant to name.

← back to recent threads