зеркало из https://github.com/microsoft/git.git
git-log --author and --committer are not left-anchored by default
I know that I'd prefer a rule where "--author=^Junio" would result in the grep-pattern being "^author Junio", but without the initial '^' it would be "^author .*Junio". Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Родитель
f69895fb0c
Коммит
a2ed6ae402
10
revision.c
10
revision.c
|
@ -677,6 +677,7 @@ int handle_revision_arg(const char *arg, struct rev_info *revs,
|
|||
static void add_header_grep(struct rev_info *revs, const char *field, const char *pattern)
|
||||
{
|
||||
char *pat;
|
||||
const char *prefix;
|
||||
int patlen, fldlen;
|
||||
|
||||
if (!revs->header_filter) {
|
||||
|
@ -689,8 +690,13 @@ static void add_header_grep(struct rev_info *revs, const char *field, const char
|
|||
|
||||
fldlen = strlen(field);
|
||||
patlen = strlen(pattern);
|
||||
pat = xmalloc(patlen + fldlen + 3);
|
||||
sprintf(pat, "^%s %s", field, pattern);
|
||||
pat = xmalloc(patlen + fldlen + 10);
|
||||
prefix = ".*";
|
||||
if (*pattern == '^') {
|
||||
prefix = "";
|
||||
pattern++;
|
||||
}
|
||||
sprintf(pat, "^%s %s%s", field, prefix, pattern);
|
||||
append_grep_pattern(revs->header_filter, pat,
|
||||
"command line", 0, GREP_PATTERN);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче