summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 694a577)
raw | patch | inline | side by side (parent: 694a577)
author | Junio C Hamano <gitster@pobox.com> | |
Mon, 19 Nov 2007 06:22:00 +0000 (22:22 -0800) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Fri, 23 Nov 2007 06:11:28 +0000 (22:11 -0800) |
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-branch.txt | patch | blob | history | |
t/t3201-branch-contains.sh | [new file with mode: 0755] | patch | blob |
index 5ce905de862253aa2bd2ed619819306165e978f0..16303ef555aa815e89f7882517644e9b76f8b488 100644 (file)
[verse]
'git-branch' [--color | --no-color] [-r | -a]
[-v [--abbrev=<length> | --no-abbrev]]
+ [--contains <commit>]
'git-branch' [--track | --no-track] [-l] [-f] <branchname> [<start-point>]
'git-branch' (-m | -M) [<oldbranch>] <newbranch>
'git-branch' (-d | -D) [-r] <branchname>...
will be shown, the current branch will be highlighted with an asterisk.
Option `-r` causes the remote-tracking branches to be listed,
and option `-a` shows both.
+With `--contains <commit>`, shows only the branches that
+contains the named commit (in other words, the branches whose
+tip commits are descendant of the named commit).
In its second form, a new branch named <branchname> will be created.
It will start out with a head equal to the one given as <start-point>.
diff --git a/t/t3201-branch-contains.sh b/t/t3201-branch-contains.sh
--- /dev/null
@@ -0,0 +1,58 @@
+#!/bin/sh
+
+test_description='branch --contains <commit>'
+
+. ./test-lib.sh
+
+test_expect_success setup '
+
+ >file &&
+ git add file &&
+ test_tick &&
+ git commit -m initial &&
+ git branch side &&
+
+ echo 1 >file &&
+ test_tick &&
+ git commit -a -m "second on master" &&
+
+ git checkout side &&
+ echo 1 >file &&
+ test_tick &&
+ git commit -a -m "second on side" &&
+
+ git merge master
+
+'
+
+test_expect_success 'branch --contains=master' '
+
+ git branch --contains=master >actual &&
+ {
+ echo " master" && echo "* side"
+ } >expect &&
+ diff -u expect actual
+
+'
+
+test_expect_success 'branch --contains master' '
+
+ git branch --contains master >actual &&
+ {
+ echo " master" && echo "* side"
+ } >expect &&
+ diff -u expect actual
+
+'
+
+test_expect_success 'branch --contains=side' '
+
+ git branch --contains=side >actual &&
+ {
+ echo "* side"
+ } >expect &&
+ diff -u expect actual
+
+'
+
+test_done