[PATCH 0/7] grep: better support for binary files
- From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
- Date
- May 13, 2010, 20:33 UTC
- Message-ID
- <4BEC6211.2000309@lsrfire.ath.cx>
This series improves support of git grep for binary files. It tries to pick the low hanging fruits; at the end you can search _in_ files that contain NUL characters, but you can't search _for_ NULs, yet.
[PATCH 1/7] grep: add test script for binary file handling
This patch adds a simple test script documenting what git grep can do with binary files.
[PATCH 2/7] grep: refactor handling of binary mode options [PATCH 3/7] grep: --count over binary
These two makes git grep handle counting in binary files like GNU grep does.
[PATCH 4/7] grep: use memmem() for fixed string search [PATCH 5/7] grep: continue case insensitive fixed string search after NUL chars
These two patches make git grep -F work on binary files.
[PATCH 6/7] grep: add regmatch(), a wrapper for REG_STARTEND handling [PATCH 7/7] grep: use regmatch() for line matching
The final patches make git grep work on binary files if the platform's regexec() supports the flag REG_STARTEND. Our own version in compat/ doesn't, unfortunately.
grep.c | 70 ++++++++++++++++++++++++++++------------------- t/t7008-grep-binary.sh | 54 +++++++++++++++++++++++++++++++++++++ 2 files changed, 96 insertions(+), 28 deletions(-)