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

log -S/-G (aka pickaxe) searches binary files by default

From
Thomas Braun <thomas.braun@virtuell-zuhause.de>
Date
Mar 3, 2017, 00:52 UTC
Message-ID
<7a0992eb-adb9-a7a1-cfaa-3384bc4d3e5c@virtuell-zuhause.de>
Hi,
I happen to have quite large binary files in my repos.

Today I realized that a line like git log -G a searches also files found to be binary (or explicitly marked as binary).

Is that on purpose? The documentation of "-G<regex>" states

"Look for differences whose patch text contains added/removed lines that match <regex>."

which contradicts the current behaviour. At least for me text != binary.

To reproduce: $ git init $ echo -e "a\0b" > data.bin $ git add data.bin $ git commit -m "Add new data" $ git log -p [...]

diff --git a/data.bin b/data.bin
new file mode 100644
index 0000000..1a23e4b
Binary files /dev/null and b/data.bin differ
$ git log -G a
[...]

    Add new data

I've verified the behaviour with git version 2.12.0.windows.1 and git
version 2.12.0.189.g3bc5322 on debian.

If it is on purpose is there a config option to disable that?

Thanks for reading,
Thomas
Next: Junio C Hamano
Message 1 of 5 in “log -S/-G (aka pickaxe) searches binary files by default”
  1. Thomas BraunMar 3, 2017
  2. Junio C HamanoMar 3, 2017
  3. Jeff KingMar 3, 2017
  4. Junio C HamanoMar 3, 2017
  5. Thomas BraunMar 3, 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.