summaryrefslogtreecommitdiff
path: root/ref-filter.h
diff options
context:
space:
mode:
authorKarthik Nayak <karthik.188@gmail.com>2015-07-07 16:06:12 (GMT)
committerJunio C Hamano <gitster@pobox.com>2015-08-03 17:25:28 (GMT)
commit35257aa01203bae74f9fb856fb02c10c4b3836e6 (patch)
treebcf796961dbfa72b519900247f4bbb08f746a516 /ref-filter.h
parent5afcb90560586765bf21fb09959a8b4497804639 (diff)
downloadgit-35257aa01203bae74f9fb856fb02c10c4b3836e6.zip
git-35257aa01203bae74f9fb856fb02c10c4b3836e6.tar.gz
git-35257aa01203bae74f9fb856fb02c10c4b3836e6.tar.bz2
ref-filter: implement '--merged' and '--no-merged' options
In 'branch -l' we have '--merged' option which only lists refs (branches) merged into the named commit and '--no-merged' option which only lists refs (branches) not merged into the named commit. Implement these two options in ref-filter.{c,h} so that other commands can benefit from this. Based-on-patch-by: Jeff King <peff@peff.net> Mentored-by: Christian Couder <christian.couder@gmail.com> Mentored-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr> Signed-off-by: Karthik Nayak <karthik.188@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'ref-filter.h')
-rw-r--r--ref-filter.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/ref-filter.h b/ref-filter.h
index 443cfa7..f115174 100644
--- a/ref-filter.h
+++ b/ref-filter.h
@@ -31,6 +31,7 @@ struct ref_array_item {
unsigned char objectname[20];
int flag;
const char *symref;
+ struct commit *commit;
struct atom_value *value;
char refname[FLEX_ARRAY];
};
@@ -43,6 +44,13 @@ struct ref_array {
struct ref_filter {
const char **name_patterns;
struct sha1_array points_at;
+
+ enum {
+ REF_FILTER_MERGED_NONE = 0,
+ REF_FILTER_MERGED_INCLUDE,
+ REF_FILTER_MERGED_OMIT
+ } merge;
+ struct commit *merge_commit;
};
struct ref_filter_cbdata {