Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
[PATCH] add *--no-merges* flag to suppress display of merge commits
author
Johannes Schindelin
<Johannes.Schindelin@gmx.de>
Mon, 8 Aug 2005 09:37:21 +0000
(11:37 +0200)
committer
Junio C Hamano
<junkio@cox.net>
Wed, 10 Aug 2005 05:28:21 +0000
(22:28 -0700)
As requested by Junio (who suggested --single-parents-only, but this
could forget a no-parent root).
Also, adds a few missing options to the usage string.
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
rev-list.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
4852f72
)
diff --git
a/rev-list.c
b/rev-list.c
index fae30a2b68c98555bc8c2e5c9cea84c358ec8363..1a03bf7b3754e1644f9a2cee80d9d09b563ee1ec 100644
(file)
--- a/
rev-list.c
+++ b/
rev-list.c
@@
-15,12
+15,15
@@
static const char rev_list_usage[] =
" --max-count=nr\n"
" --max-age=epoch\n"
" --min-age=epoch\n"
" --max-count=nr\n"
" --max-age=epoch\n"
" --min-age=epoch\n"
+ " --parents\n"
" --bisect\n"
" --objects\n"
" --unpacked\n"
" --header\n"
" --pretty\n"
" --bisect\n"
" --objects\n"
" --unpacked\n"
" --header\n"
" --pretty\n"
- " --merge-order [ --show-breaks ]";
+ " --no-merges\n"
+ " --merge-order [ --show-breaks ]\n"
+ " --topo-order";
static int unpacked = 0;
static int bisect_list = 0;
static int unpacked = 0;
static int bisect_list = 0;
@@
-39,6
+42,7
@@
static int merge_order = 0;
static int show_breaks = 0;
static int stop_traversal = 0;
static int topo_order = 0;
static int show_breaks = 0;
static int stop_traversal = 0;
static int topo_order = 0;
+static int no_merges = 0;
static void show_commit(struct commit *commit)
{
static void show_commit(struct commit *commit)
{
@@
-82,6
+86,8
@@
static int filter_commit(struct commit * commit)
}
if (max_count != -1 && !max_count--)
return STOP;
}
if (max_count != -1 && !max_count--)
return STOP;
+ if (no_merges && (commit->parents && commit->parents->next))
+ return CONTINUE;
return DO;
}
return DO;
}
@@
-500,6
+506,10
@@
int main(int argc, char **argv)
prefix = "commit ";
continue;
}
prefix = "commit ";
continue;
}
+ if (!strncmp(arg, "--no-merges", 11)) {
+ no_merges = 1;
+ continue;
+ }
if (!strcmp(arg, "--parents")) {
show_parents = 1;
continue;
if (!strcmp(arg, "--parents")) {
show_parents = 1;
continue;