зеркало из https://github.com/microsoft/git.git
[PATCH] rev-tree support for "in X but not in Y".
To do the automated commit-mailing I need to be able to answer the question "which commits are here today but weren't yesterday"... i.e. given two commit-ids $HEAD and $YESTERDAY I want to be able to do: rev-tree $HEAD ^$YESTERDAY to list those commits which are in the tree now but weren't ancestors of yesterday's head. Yes, I could probably do this with rev-tree $HEAD $YESTERDAY | egrep -v ^[a-z0-9]*:3 but I prefer not to.
This commit is contained in:
Родитель
c0fb976aa7
Коммит
727ff27787
|
@ -14,6 +14,7 @@
|
|||
#define SEEN 0x10000
|
||||
|
||||
static int show_edges = 0;
|
||||
static int basemask = 0;
|
||||
|
||||
struct parent {
|
||||
struct revision *parent;
|
||||
|
@ -180,6 +181,9 @@ static int interesting(struct revision *rev)
|
|||
}
|
||||
return 0;
|
||||
}
|
||||
if (mask & basemask)
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -214,6 +218,10 @@ int main(int argc, char **argv)
|
|||
continue;
|
||||
}
|
||||
|
||||
if (arg[0] == '^') {
|
||||
arg++;
|
||||
basemask |= 1<<nr;
|
||||
}
|
||||
if (nr >= MAX_COMMITS || get_sha1_hex(arg, sha1[nr]))
|
||||
usage("rev-tree [--edges] [--cache <cache-file>] <commit-id> [<commit-id>]");
|
||||
parse_commit(sha1[nr]);
|
Загрузка…
Ссылка в новой задаче