Browse Source
It's built-in now. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>maint
Linus Torvalds
19 years ago
committed by
Junio C Hamano
2 changed files with 3 additions and 64 deletions
@ -1,62 +0,0 @@
@@ -1,62 +0,0 @@
|
||||
#!/bin/sh |
||||
# |
||||
# Copyright (c) Linus Torvalds, 2005 |
||||
# |
||||
|
||||
USAGE='[<option>...] [-e] <pattern> [<path>...]' |
||||
SUBDIRECTORY_OK='Yes' |
||||
. git-sh-setup |
||||
|
||||
got_pattern () { |
||||
if [ -z "$no_more_patterns" ] |
||||
then |
||||
pattern="$1" no_more_patterns=yes |
||||
else |
||||
die "git-grep: do not specify more than one pattern" |
||||
fi |
||||
} |
||||
|
||||
no_more_patterns= |
||||
pattern= |
||||
flags=() |
||||
git_flags=() |
||||
while : ; do |
||||
case "$1" in |
||||
-o|--cached|--deleted|--others|--killed|\ |
||||
--ignored|--modified|--exclude=*|\ |
||||
--exclude-from=*|\--exclude-per-directory=*) |
||||
git_flags=("${git_flags[@]}" "$1") |
||||
;; |
||||
-e) |
||||
got_pattern "$2" |
||||
shift |
||||
;; |
||||
-A|-B|-C|-D|-d|-f|-m) |
||||
flags=("${flags[@]}" "$1" "$2") |
||||
shift |
||||
;; |
||||
--) |
||||
# The rest are git-ls-files paths |
||||
shift |
||||
break |
||||
;; |
||||
-*) |
||||
flags=("${flags[@]}" "$1") |
||||
;; |
||||
*) |
||||
if [ -z "$no_more_patterns" ] |
||||
then |
||||
got_pattern "$1" |
||||
shift |
||||
fi |
||||
[ "$1" = -- ] && shift |
||||
break |
||||
;; |
||||
esac |
||||
shift |
||||
done |
||||
[ "$pattern" ] || { |
||||
usage |
||||
} |
||||
git-ls-files -z "${git_flags[@]}" -- "$@" | |
||||
xargs -0 grep "${flags[@]}" -e "$pattern" -- |
Loading…
Reference in new issue