diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-02-21 01:02:46 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-02-28 16:15:29 -0800 |
commit | accccde483c3cfd55ef55037e8802ca0baaee5a1 (patch) | |
tree | a73cc604c24bc34fd071e3fd11e1f8cedfc45d1e /revision.c | |
parent | 0f871cf56e83d13116b021295688e57f26bbf93d (diff) | |
download | git-accccde483c3cfd55ef55037e8802ca0baaee5a1.tar.gz |
pickaxe: allow -i to search in patch case-insensitively
"git log -S<string>" is a useful way to find the last commit in the
codebase that touched the <string>. As it was designed to be used by a
porcelain script to dig the history starting from a block of text that
appear in the starting commit, it never had to look for anything but an
exact match.
When used by an end user who wants to look for the last commit that
removed a string (e.g. name of a variable) that he vaguely remembers,
however, it is useful to support case insensitive match.
When given the "--regexp-ignore-case" (or "-i") option, which originally
was designed to affect case sensitivity of the search done in the commit
log part, e.g. "log --grep", the matches made with -S/-G pickaxe search is
done case insensitively now.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'revision.c')
-rw-r--r-- | revision.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/revision.c b/revision.c index 8764dde381..971b7dc98d 100644 --- a/revision.c +++ b/revision.c @@ -1559,6 +1559,7 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg revs->grep_filter.regflags |= REG_EXTENDED; } else if (!strcmp(arg, "--regexp-ignore-case") || !strcmp(arg, "-i")) { revs->grep_filter.regflags |= REG_ICASE; + DIFF_OPT_SET(&revs->diffopt, PICKAXE_IGNORE_CASE); } else if (!strcmp(arg, "--fixed-strings") || !strcmp(arg, "-F")) { revs->grep_filter.fixed = 1; } else if (!strcmp(arg, "--all-match")) { |