git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: bug: `git log --grep ... --invert-grep --author=...` negates / ignores --author

From
Jeff King <peff@peff.net>
Date
May 31, 2017, 21:40 UTC
Message-ID
<20170531214019.bbhjdaejvgje3v6g@sigill.intra.peff.net>
In-Reply-To
<CACBZZX7OhdRM+Mhx4FVX-Upvq169ZLvArL5ZxcTgz8u=WRh3aw@mail.gmail.com>
On Wed, May 31, 2017 at 08:08:54PM +0200, Ævar Arnfjörð Bjarmason wrote:
Show 22 quoted lines
> $ git log --grep=bar --author=Ævar --pretty=format:%an -100 origin/pu
> |sort|uniq -c|sort -nr
> 5 Ævar Arnfjörð Bjarmason
> 
> $ git log --author=Ævar --pretty=format:%an -100 origin/pu |sort|uniq
> -c|sort -nr
> 100 Ævar Arnfjörð Bjarmason
> 
> $ git log --grep=bar --invert-grep --author=Ævar --pretty=format:%an
> -100 origin/pu |sort|uniq -c|sort -nr
>      78 Junio C Hamano
>      14 Jeff King
>       2 Andreas Heiduk
>       1 Sahil Dua
>       1 Rikard Falkeborn
>       1 Johannes Sixt
>       1 Johannes Schindelin
>       1 Ben Peart
>       1 Ævar Arnfjörð Bjarmason
> 
> That last command should only find my commits, but instead --author is
> discarded.

I would have thought that the last command wouldn't find _any_ of your commits. Don't we consider --author a greppable pattern and invert it?

By itself:
  $ git log --author=Ævar --invert-grep --format=%an -100 origin/pu |
    sort | uniq -c | sort -rn
       79 Junio C Hamano
        8 Stefan Beller
        8 Jeff King
        1 Sahil Dua
        1 Rikard Falkeborn
        1 Johannes Sixt
        1 Johannes Schindelin
        1 Andreas Heiduk
So that makes sense from the "--author is invertable" world-view.

But I'm puzzled that you show up at all when --grep=bar is added (and moreover, that we get _one_ commit from you, not the 5 found in your initial command). That seems like a bug.

-Peff
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 3 of 7 in “bug: `git log --grep ... --invert-grep --author=...` negates / ignores --author”
  1. Anthony SottileMay 31, 2017
  2. Ævar Arnfjörð BjarmasonMay 31, 2017
  3. Jeff KingMay 31, 2017
  4. Ævar Arnfjörð BjarmasonJun 1, 2017
  5. Anthony SottileJun 1, 2017
  6. Junio C HamanoJun 1, 2017
  7. Junio C HamanoJun 1, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.