aboutsummaryrefslogtreecommitdiff
path: root/git.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@osdl.org>2006-05-14 20:49:15 -0700
committerJunio C Hamano <junkio@cox.net>2006-05-14 22:33:24 -0700
commit1e2398d7fad308dcc6019709244b40303b51b54d (patch)
tree50ca170889b4b033782e076fce7539ea2f7cddbb /git.c
parent07ea91d84f3c7bb075d4716ee40096e3b12a4c86 (diff)
downloadgit-1e2398d7fad308dcc6019709244b40303b51b54d.tar.gz
git-1e2398d7fad308dcc6019709244b40303b51b54d.tar.xz
builtin-grep: use external grep when we can take advantage of it
It's not perfect, but it gets the "git grep some-random-string" down to the good old half-a-second range for the kernel. It should convert more of the argument flags for "grep", that should be trivial to expand (I did a few just as an example). It should also bother to try to return the right "hit" value (which it doesn't, right now - the code is kind of there, but I didn't actually bother to do it _right_). Also, right now it _just_ limits by number of arguments, but it should also strictly speaking limit by total argument size (ie add up the length of the filenames, and do the "exec_grep()" flush call if it's bigger than some random value like 32kB). But I think that it's _conceptually_ doing all the right things, and it seems to work. So maybe somebody else can do some of the final polish. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git.c')
0 files changed, 0 insertions, 0 deletions