Hopefully the final version. This is exactly like v3 except for a couple of minor changes (and rebased on the latest upstream master): Ævar Arnfjörð Bjarmason (16): tag doc: move the description of --[no-]merged earlier tag doc: split up the --[no-]merged documentation tag doc: reword --[no-]merged to talk about commits, not tips ref-filter: make combining --merged & --no-merged an error ref-filter: add test for --contains on a non-commit tag: remove a TODO item from the test suite tag tests: fix a typo in a test description for-each-ref: partly change <object> to <commit> in help tag: add more incompatibles mode tests Clarified in the commit message what code in builtin/tag.c we're trying to test here. parse-options: add OPT_NONEG to the "contains" option tag: change misleading --list <pattern> documentation Use the same phrasing as Junio's "branch doc: update description for `--list`" does when describing "git tag --list". tag: implicitly supply --list given another list-like option tag: change --point-at to default to HEAD ref-filter: add --no-contains option to tag/branch/for-each-ref ref-filter: reflow recently changed branch/tag/for-each-ref docs tag: add tests for --with and --without Documentation/git-branch.txt | 33 +++-- Documentation/git-for-each-ref.txt | 12 +- Documentation/git-tag.txt | 59 +++++--- builtin/branch.c | 5 +- builtin/for-each-ref.c | 5 +- builtin/tag.c | 27 ++-- contrib/completion/git-completion.bash | 4 +- parse-options.h | 6 +- ref-filter.c | 30 +++- ref-filter.h | 1 + t/t3200-branch.sh | 4 + t/t3201-branch-contains.sh | 61 +++++++- t/t6302-for-each-ref-filter.sh | 20 +++ t/t7004-tag.sh | 245 +++++++++++++++++++++++++++++++-- 14 files changed, 440 insertions(+), 72 deletions(-) -- 2.11.0