Git development
 help / color / mirror / Atom feed
* [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
@ 2007-03-04 22:07 Santi Béjar
  2007-03-04 23:30 ` Junio C Hamano
  2007-03-05  8:09 ` Santi Béjar
  0 siblings, 2 replies; 10+ messages in thread
From: Santi Béjar @ 2007-03-04 22:07 UTC (permalink / raw)
  To: Git Mailing List


Signed-off-by: Santi Béjar <sbejar@gmail.com>
---
 Hi *,

   it is a much reduced version (63 instead of 400 tests) but contains
 also tests for the fetched tags (missing anything else?).
 I think it is suitable to be included.

   Santi

 t/t5515-fetch-merge-logic.sh                       |  160 ++++++++++++++++++++
 t/t5515/fetch.br-branches-default                  |    8 +
 t/t5515/fetch.br-branches-default-merge            |    8 +
 ...etch.br-branches-default-merge_branches-default |    8 +
 t/t5515/fetch.br-branches-default-octopus          |    8 +
 ...ch.br-branches-default-octopus_branches-default |    8 +
 t/t5515/fetch.br-branches-default_branches-default |    8 +
 t/t5515/fetch.br-branches-one                      |    8 +
 t/t5515/fetch.br-branches-one-merge                |    8 +
 t/t5515/fetch.br-branches-one-merge_branches-one   |    8 +
 t/t5515/fetch.br-branches-one-octopus              |    8 +
 t/t5515/fetch.br-branches-one-octopus_branches-one |    8 +
 t/t5515/fetch.br-branches-one_branches-one         |    8 +
 t/t5515/fetch.br-config-explicit                   |   11 ++
 t/t5515/fetch.br-config-explicit-merge             |   11 ++
 .../fetch.br-config-explicit-merge_config-explicit |   11 ++
 t/t5515/fetch.br-config-explicit-octopus           |   11 ++
 ...etch.br-config-explicit-octopus_config-explicit |   11 ++
 t/t5515/fetch.br-config-explicit_config-explicit   |   11 ++
 t/t5515/fetch.br-config-glob                       |   11 ++
 t/t5515/fetch.br-config-glob-merge                 |   11 ++
 t/t5515/fetch.br-config-glob-merge_config-glob     |   11 ++
 t/t5515/fetch.br-config-glob-octopus               |   11 ++
 t/t5515/fetch.br-config-glob-octopus_config-glob   |   11 ++
 t/t5515/fetch.br-config-glob_config-glob           |   11 ++
 t/t5515/fetch.br-remote-explicit                   |   11 ++
 t/t5515/fetch.br-remote-explicit-merge             |   11 ++
 .../fetch.br-remote-explicit-merge_remote-explicit |   11 ++
 t/t5515/fetch.br-remote-explicit-octopus           |   11 ++
 ...etch.br-remote-explicit-octopus_remote-explicit |   11 ++
 t/t5515/fetch.br-remote-explicit_remote-explicit   |   11 ++
 t/t5515/fetch.br-remote-glob                       |   11 ++
 t/t5515/fetch.br-remote-glob-merge                 |   11 ++
 t/t5515/fetch.br-remote-glob-merge_remote-glob     |   11 ++
 t/t5515/fetch.br-remote-glob-octopus               |   11 ++
 t/t5515/fetch.br-remote-glob-octopus_remote-glob   |   11 ++
 t/t5515/fetch.br-remote-glob_remote-glob           |   11 ++
 t/t5515/fetch.br-unconfig                          |   11 ++
 t/t5515/fetch.br-unconfig_--tags_.._.git           |    7 +
 t/t5515/fetch.br-unconfig_.._.git_one              |    2 +
 ...nfig_.._.git_one_tag_tag-one_tag_tag-three-file |    8 +
 t/t5515/fetch.br-unconfig_.._.git_one_two          |    3 +
 ...fig_.._.git_tag_tag-one-tree_tag_tag-three-file |    7 +
 ...h.br-unconfig_.._.git_tag_tag-one_tag_tag-three |    7 +
 t/t5515/fetch.br-unconfig_branches-default         |    8 +
 t/t5515/fetch.br-unconfig_branches-one             |    8 +
 t/t5515/fetch.br-unconfig_config-explicit          |   11 ++
 t/t5515/fetch.br-unconfig_config-glob              |   11 ++
 t/t5515/fetch.br-unconfig_remote-explicit          |   11 ++
 t/t5515/fetch.br-unconfig_remote-glob              |   11 ++
 t/t5515/fetch.master                               |   11 ++
 t/t5515/fetch.master_--tags_.._.git                |    7 +
 t/t5515/fetch.master_.._.git_one                   |    2 +
 ...ster_.._.git_one_tag_tag-one_tag_tag-three-file |    8 +
 t/t5515/fetch.master_.._.git_one_two               |    3 +
 ...ter_.._.git_tag_tag-one-tree_tag_tag-three-file |    7 +
 .../fetch.master_.._.git_tag_tag-one_tag_tag-three |    7 +
 t/t5515/fetch.master_branches-default              |    8 +
 t/t5515/fetch.master_branches-one                  |    8 +
 t/t5515/fetch.master_config-explicit               |   11 ++
 t/t5515/fetch.master_config-glob                   |   11 ++
 t/t5515/fetch.master_remote-explicit               |   11 ++
 t/t5515/fetch.master_remote-glob                   |   11 ++
 63 files changed, 730 insertions(+), 0 deletions(-)
 create mode 100755 t/t5515-fetch-merge-logic.sh
 create mode 100644 t/t5515/fetch.br-branches-default
 create mode 100644 t/t5515/fetch.br-branches-default-merge
 create mode 100644 t/t5515/fetch.br-branches-default-merge_branches-default
 create mode 100644 t/t5515/fetch.br-branches-default-octopus
 create mode 100644 t/t5515/fetch.br-branches-default-octopus_branches-default
 create mode 100644 t/t5515/fetch.br-branches-default_branches-default
 create mode 100644 t/t5515/fetch.br-branches-one
 create mode 100644 t/t5515/fetch.br-branches-one-merge
 create mode 100644 t/t5515/fetch.br-branches-one-merge_branches-one
 create mode 100644 t/t5515/fetch.br-branches-one-octopus
 create mode 100644 t/t5515/fetch.br-branches-one-octopus_branches-one
 create mode 100644 t/t5515/fetch.br-branches-one_branches-one
 create mode 100644 t/t5515/fetch.br-config-explicit
 create mode 100644 t/t5515/fetch.br-config-explicit-merge
 create mode 100644 t/t5515/fetch.br-config-explicit-merge_config-explicit
 create mode 100644 t/t5515/fetch.br-config-explicit-octopus
 create mode 100644 t/t5515/fetch.br-config-explicit-octopus_config-explicit
 create mode 100644 t/t5515/fetch.br-config-explicit_config-explicit
 create mode 100644 t/t5515/fetch.br-config-glob
 create mode 100644 t/t5515/fetch.br-config-glob-merge
 create mode 100644 t/t5515/fetch.br-config-glob-merge_config-glob
 create mode 100644 t/t5515/fetch.br-config-glob-octopus
 create mode 100644 t/t5515/fetch.br-config-glob-octopus_config-glob
 create mode 100644 t/t5515/fetch.br-config-glob_config-glob
 create mode 100644 t/t5515/fetch.br-remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-explicit-merge
 create mode 100644 t/t5515/fetch.br-remote-explicit-merge_remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-explicit-octopus
 create mode 100644 t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-explicit_remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-glob
 create mode 100644 t/t5515/fetch.br-remote-glob-merge
 create mode 100644 t/t5515/fetch.br-remote-glob-merge_remote-glob
 create mode 100644 t/t5515/fetch.br-remote-glob-octopus
 create mode 100644 t/t5515/fetch.br-remote-glob-octopus_remote-glob
 create mode 100644 t/t5515/fetch.br-remote-glob_remote-glob
 create mode 100644 t/t5515/fetch.br-unconfig
 create mode 100644 t/t5515/fetch.br-unconfig_--tags_.._.git
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_one
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_one_two
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three
 create mode 100644 t/t5515/fetch.br-unconfig_branches-default
 create mode 100644 t/t5515/fetch.br-unconfig_branches-one
 create mode 100644 t/t5515/fetch.br-unconfig_config-explicit
 create mode 100644 t/t5515/fetch.br-unconfig_config-glob
 create mode 100644 t/t5515/fetch.br-unconfig_remote-explicit
 create mode 100644 t/t5515/fetch.br-unconfig_remote-glob
 create mode 100644 t/t5515/fetch.master
 create mode 100644 t/t5515/fetch.master_--tags_.._.git
 create mode 100644 t/t5515/fetch.master_.._.git_one
 create mode 100644 t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file
 create mode 100644 t/t5515/fetch.master_.._.git_one_two
 create mode 100644 t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file
 create mode 100644 t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three
 create mode 100644 t/t5515/fetch.master_branches-default
 create mode 100644 t/t5515/fetch.master_branches-one
 create mode 100644 t/t5515/fetch.master_config-explicit
 create mode 100644 t/t5515/fetch.master_config-glob
 create mode 100644 t/t5515/fetch.master_remote-explicit
 create mode 100644 t/t5515/fetch.master_remote-glob

diff --git a/t/t5515-fetch-merge-logic.sh b/t/t5515-fetch-merge-logic.sh
new file mode 100755
index 0000000..128f588
--- /dev/null
+++ b/t/t5515-fetch-merge-logic.sh
@@ -0,0 +1,160 @@
+#!/bin/sh
+#
+# Copyright (c) 2007 Santi Béjar, based on t4013 by Junio C Hamano
+#
+#
+
+test_description='Merge logic in fetch'
+
+. ./test-lib.sh
+
+LF='
+'
+
+test_expect_success setup '
+	GIT_AUTHOR_DATE="2006-06-26 00:00:00 +0000" &&
+	GIT_COMMITTER_DATE="2006-06-26 00:00:00 +0000" &&
+	export GIT_AUTHOR_DATE GIT_COMMITTER_DATE &&
+
+	echo >file original &&
+	git add file &&
+	git commit -a -m One &&
+	git tag tag-one &&
+	git tag tag-one-tree HEAD^{tree} &&
+	git branch one &&
+
+	echo two >> file &&
+	git commit -a -m Two &&
+	git tag -a -m "Tag Two" tag-two &&
+	git branch two &&
+
+	echo three >> file &&
+	git commit -a -m Three &&
+	git tag -a -m "Tag Three" tag-three &&
+	git tag -a -m "Tag Three file" tag-three-file HEAD^{tree}:file &&
+	git branch three &&
+
+	echo master >> file &&
+	git commit -a -m Master
+	git tag -a -m "Tag Master" tag-master &&
+
+	git checkout three
+
+	git clone . cloned &&
+	cd cloned &&
+
+	git config remote.config-explicit.url ../.git/ &&
+	git config remote.config-explicit.fetch refs/heads/master:remotes/rem/master &&
+	git config --add remote.config-explicit.fetch refs/heads/one:remotes/rem/one &&
+	git config --add remote.config-explicit.fetch two:remotes/rem/two &&
+	git config --add remote.config-explicit.fetch refs/heads/three:remotes/rem/three &&
+	remotes="config-explicit" &&
+
+	git config remote.config-glob.url ../.git/ &&
+	git config remote.config-glob.fetch refs/heads/*:refs/remotes/rem/* &&
+	remotes="$remotes config-glob" &&
+
+	mkdir -p .git/remotes &&
+	{
+		echo "URL: ../.git/"
+		echo "Pull: refs/heads/master:remotes/rem/master"
+		echo "Pull: refs/heads/one:remotes/rem/one"
+		echo "Pull: two:remotes/rem/two"
+		echo "Pull: refs/heads/three:remotes/rem/three"
+	} >.git/remotes/remote-explicit &&
+	remotes="$remotes remote-explicit" &&
+
+	{
+		echo "URL: ../.git/"
+		echo "Pull: refs/heads/*:refs/remotes/rem/*"
+	} >.git/remotes/remote-glob &&
+	remotes="$remotes remote-glob" &&
+
+	mkdir -p .git/branches &&
+	echo "../.git" > .git/branches/branches-default &&
+	remotes="$remotes branches-default" &&
+
+	echo "../.git#one" > .git/branches/branches-one &&
+	remotes="$remotes branches-one" &&
+
+	for remote in $remotes ; do
+		git config branch.br-$remote.remote $remote &&
+		git config branch.br-$remote-merge.remote $remote &&
+		git config branch.br-$remote-merge.merge refs/heads/three &&
+		git config branch.br-$remote-octopus.remote $remote &&
+		git config branch.br-$remote-octopus.merge refs/heads/one &&
+		git config --add branch.br-$remote-octopus.merge two &&
+		git config --add branch.br-$remote-octopus.merge remotes/rem/three
+	done
+'
+
+# Merge logic depends on branch properties and Pull: or .fetch lines
+for remote in $remotes ; do
+    for branch in "" "-merge" "-octopus" ; do
+cat <<EOF
+br-$remote$branch
+br-$remote$branch $remote
+EOF
+    done
+done > tests
+
+# Merge logic does not depend on branch properties,
+# but does depend on Pull: or fetch lines.
+# Use two branches completely unrelated from the arguments,
+# the clone default and one without branch properties
+for branch in master br-unconfig ; do
+    echo $branch
+    for remote in $remotes ; do
+	echo $branch $remote
+    done
+done >> tests
+
+# Merge logic does not depend on branch properties
+# neither in the Pull: or .fetch config
+for branch in master br-unconfig ; do
+    cat <<EOF
+$branch ../.git one
+$branch ../.git one two
+$branch --tags ../.git
+$branch ../.git tag tag-one tag tag-three
+$branch ../.git tag tag-one-tree tag tag-three-file
+$branch ../.git one tag tag-one tag tag-three-file
+EOF
+done >> tests
+
+while read cmd
+do
+	case "$cmd" in
+	'' | '#'*) continue ;;
+	esac
+	test=`echo "$cmd" | sed -e 's|[/ ][/ ]*|_|g'`
+	cnt=`expr $test_count + 1`
+	pfx=`printf "%04d" $cnt`
+	expect="../../t5515/fetch.$test"
+	actual="$pfx-fetch.$test"
+
+	test_expect_success "$cmd" '
+		{
+			echo "# $cmd"
+			set x $cmd; shift
+			git symbolic-ref HEAD refs/heads/$1 ; shift
+			rm -f .git/FETCH_HEAD
+			rm -f .git/refs/heads/*
+			rm -f .git/refs/remotes/rem/*
+			rm -f .git/refs/tags/*
+			git fetch "$@" >/dev/null
+			cut -f -2 .git/FETCH_HEAD
+		} >"$actual" &&
+		if test -f "$expect"
+		then
+			diff -u "$expect" "$actual" &&
+			rm -f "$actual"
+		else
+			# this is to help developing new tests.
+			cp "$actual" "$expect"
+			false
+		fi
+	'
+done < tests
+
+test_done
diff --git a/t/t5515/fetch.br-branches-default b/t/t5515/fetch.br-branches-default
new file mode 100644
index 0000000..5d07051
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default
@@ -0,0 +1,8 @@
+# br-branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-default-merge b/t/t5515/fetch.br-branches-default-merge
new file mode 100644
index 0000000..85e2726
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-merge
@@ -0,0 +1,8 @@
+# br-branches-default-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-default-merge_branches-default b/t/t5515/fetch.br-branches-default-merge_branches-default
new file mode 100644
index 0000000..4663565
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-merge_branches-default
@@ -0,0 +1,8 @@
+# br-branches-default-merge branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-default-octopus b/t/t5515/fetch.br-branches-default-octopus
new file mode 100644
index 0000000..004c4bc
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-octopus
@@ -0,0 +1,8 @@
+# br-branches-default-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-default-octopus_branches-default b/t/t5515/fetch.br-branches-default-octopus_branches-default
new file mode 100644
index 0000000..8ac0e4c
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-octopus_branches-default
@@ -0,0 +1,8 @@
+# br-branches-default-octopus branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-default_branches-default b/t/t5515/fetch.br-branches-default_branches-default
new file mode 100644
index 0000000..f293358
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default_branches-default
@@ -0,0 +1,8 @@
+# br-branches-default branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-one b/t/t5515/fetch.br-branches-one
new file mode 100644
index 0000000..16c0a31
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one
@@ -0,0 +1,8 @@
+# br-branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-one-merge b/t/t5515/fetch.br-branches-one-merge
new file mode 100644
index 0000000..f9dbbaa
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-merge
@@ -0,0 +1,8 @@
+# br-branches-one-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-one-merge_branches-one b/t/t5515/fetch.br-branches-one-merge_branches-one
new file mode 100644
index 0000000..b450dde
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-merge_branches-one
@@ -0,0 +1,8 @@
+# br-branches-one-merge branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-one-octopus b/t/t5515/fetch.br-branches-one-octopus
new file mode 100644
index 0000000..ef91ee3
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-octopus
@@ -0,0 +1,8 @@
+# br-branches-one-octopus
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-one-octopus_branches-one b/t/t5515/fetch.br-branches-one-octopus_branches-one
new file mode 100644
index 0000000..f2fdde4
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-octopus_branches-one
@@ -0,0 +1,8 @@
+# br-branches-one-octopus branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-branches-one_branches-one b/t/t5515/fetch.br-branches-one_branches-one
new file mode 100644
index 0000000..407ec08
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one_branches-one
@@ -0,0 +1,8 @@
+# br-branches-one branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-explicit b/t/t5515/fetch.br-config-explicit
new file mode 100644
index 0000000..7101188
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-explicit-merge b/t/t5515/fetch.br-config-explicit-merge
new file mode 100644
index 0000000..cb1e4cb
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-merge
@@ -0,0 +1,11 @@
+# br-config-explicit-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-explicit-merge_config-explicit b/t/t5515/fetch.br-config-explicit-merge_config-explicit
new file mode 100644
index 0000000..640f283
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-merge_config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit-merge config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-explicit-octopus b/t/t5515/fetch.br-config-explicit-octopus
new file mode 100644
index 0000000..ea9f165
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-octopus
@@ -0,0 +1,11 @@
+# br-config-explicit-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-explicit-octopus_config-explicit b/t/t5515/fetch.br-config-explicit-octopus_config-explicit
new file mode 100644
index 0000000..29fa5c1
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-octopus_config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit-octopus config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-explicit_config-explicit b/t/t5515/fetch.br-config-explicit_config-explicit
new file mode 100644
index 0000000..ee7e0a6
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit_config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-glob b/t/t5515/fetch.br-config-glob
new file mode 100644
index 0000000..dcc9b65
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob
@@ -0,0 +1,11 @@
+# br-config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-glob-merge b/t/t5515/fetch.br-config-glob-merge
new file mode 100644
index 0000000..ead4eb0
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-merge
@@ -0,0 +1,11 @@
+# br-config-glob-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-glob-merge_config-glob b/t/t5515/fetch.br-config-glob-merge_config-glob
new file mode 100644
index 0000000..5db6e7b
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-merge_config-glob
@@ -0,0 +1,11 @@
+# br-config-glob-merge config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-glob-octopus b/t/t5515/fetch.br-config-glob-octopus
new file mode 100644
index 0000000..9d99052
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-octopus
@@ -0,0 +1,11 @@
+# br-config-glob-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-glob-octopus_config-glob b/t/t5515/fetch.br-config-glob-octopus_config-glob
new file mode 100644
index 0000000..dfccb15
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-octopus_config-glob
@@ -0,0 +1,11 @@
+# br-config-glob-octopus config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-config-glob_config-glob b/t/t5515/fetch.br-config-glob_config-glob
new file mode 100644
index 0000000..5c2fe01
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob_config-glob
@@ -0,0 +1,11 @@
+# br-config-glob config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-explicit b/t/t5515/fetch.br-remote-explicit
new file mode 100644
index 0000000..b874d69
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-explicit-merge b/t/t5515/fetch.br-remote-explicit-merge
new file mode 100644
index 0000000..0cd8921
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-merge
@@ -0,0 +1,11 @@
+# br-remote-explicit-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-explicit-merge_remote-explicit b/t/t5515/fetch.br-remote-explicit-merge_remote-explicit
new file mode 100644
index 0000000..4440063
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-merge_remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit-merge remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-explicit-octopus b/t/t5515/fetch.br-remote-explicit-octopus
new file mode 100644
index 0000000..357dad5
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-octopus
@@ -0,0 +1,11 @@
+# br-remote-explicit-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-explicit-octopus_remote-explicit b/t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
new file mode 100644
index 0000000..0da1471
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit-octopus remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-explicit_remote-explicit b/t/t5515/fetch.br-remote-explicit_remote-explicit
new file mode 100644
index 0000000..af7b7cc
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit_remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-glob b/t/t5515/fetch.br-remote-glob
new file mode 100644
index 0000000..bfff8ad
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-glob-merge b/t/t5515/fetch.br-remote-glob-merge
new file mode 100644
index 0000000..58c50ef
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-merge
@@ -0,0 +1,11 @@
+# br-remote-glob-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-glob-merge_remote-glob b/t/t5515/fetch.br-remote-glob-merge_remote-glob
new file mode 100644
index 0000000..dbfbf66
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-merge_remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob-merge remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-glob-octopus b/t/t5515/fetch.br-remote-glob-octopus
new file mode 100644
index 0000000..0b46c8e
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-octopus
@@ -0,0 +1,11 @@
+# br-remote-glob-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-glob-octopus_remote-glob b/t/t5515/fetch.br-remote-glob-octopus_remote-glob
new file mode 100644
index 0000000..b9e5250
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-octopus_remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob-octopus remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-remote-glob_remote-glob b/t/t5515/fetch.br-remote-glob_remote-glob
new file mode 100644
index 0000000..dbe5d23
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob_remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig b/t/t5515/fetch.br-unconfig
new file mode 100644
index 0000000..ac446c6
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig
@@ -0,0 +1,11 @@
+# br-unconfig
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_--tags_.._.git b/t/t5515/fetch.br-unconfig_--tags_.._.git
new file mode 100644
index 0000000..4ab7d67
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_--tags_.._.git
@@ -0,0 +1,7 @@
+# br-unconfig --tags ../.git
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_.._.git_one b/t/t5515/fetch.br-unconfig_.._.git_one
new file mode 100644
index 0000000..13d28c6
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_one
@@ -0,0 +1,2 @@
+# br-unconfig ../.git one
+8e32a6d901327a23ef831511badce7bf3bf46689	
diff --git a/t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file b/t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file
new file mode 100644
index 0000000..b7e045a
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file
@@ -0,0 +1,8 @@
+# br-unconfig ../.git one tag tag-one tag tag-three-file
+8e32a6d901327a23ef831511badce7bf3bf46689	
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_.._.git_one_two b/t/t5515/fetch.br-unconfig_.._.git_one_two
new file mode 100644
index 0000000..c67da8d
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_one_two
@@ -0,0 +1,3 @@
+# br-unconfig ../.git one two
+8e32a6d901327a23ef831511badce7bf3bf46689	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	
diff --git a/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file
new file mode 100644
index 0000000..d2d979b
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file
@@ -0,0 +1,7 @@
+# br-unconfig ../.git tag tag-one-tree tag tag-three-file
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three
new file mode 100644
index 0000000..2f2356a
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three
@@ -0,0 +1,7 @@
+# br-unconfig ../.git tag tag-one tag tag-three
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_branches-default b/t/t5515/fetch.br-unconfig_branches-default
new file mode 100644
index 0000000..d7367f1
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_branches-default
@@ -0,0 +1,8 @@
+# br-unconfig branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_branches-one b/t/t5515/fetch.br-unconfig_branches-one
new file mode 100644
index 0000000..47fb837
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_branches-one
@@ -0,0 +1,8 @@
+# br-unconfig branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_config-explicit b/t/t5515/fetch.br-unconfig_config-explicit
new file mode 100644
index 0000000..9acccbf
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_config-explicit
@@ -0,0 +1,11 @@
+# br-unconfig config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_config-glob b/t/t5515/fetch.br-unconfig_config-glob
new file mode 100644
index 0000000..3e4c479
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_config-glob
@@ -0,0 +1,11 @@
+# br-unconfig config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_remote-explicit b/t/t5515/fetch.br-unconfig_remote-explicit
new file mode 100644
index 0000000..ab72b04
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_remote-explicit
@@ -0,0 +1,11 @@
+# br-unconfig remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.br-unconfig_remote-glob b/t/t5515/fetch.br-unconfig_remote-glob
new file mode 100644
index 0000000..08c4c87
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_remote-glob
@@ -0,0 +1,11 @@
+# br-unconfig remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master b/t/t5515/fetch.master
new file mode 100644
index 0000000..ae2aedf
--- /dev/null
+++ b/t/t5515/fetch.master
@@ -0,0 +1,11 @@
+# master
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_--tags_.._.git b/t/t5515/fetch.master_--tags_.._.git
new file mode 100644
index 0000000..c297e65
--- /dev/null
+++ b/t/t5515/fetch.master_--tags_.._.git
@@ -0,0 +1,7 @@
+# master --tags ../.git
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_.._.git_one b/t/t5515/fetch.master_.._.git_one
new file mode 100644
index 0000000..090924e
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_one
@@ -0,0 +1,2 @@
+# master ../.git one
+8e32a6d901327a23ef831511badce7bf3bf46689	
diff --git a/t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file b/t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file
new file mode 100644
index 0000000..bdbde66
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file
@@ -0,0 +1,8 @@
+# master ../.git one tag tag-one tag tag-three-file
+8e32a6d901327a23ef831511badce7bf3bf46689	
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_.._.git_one_two b/t/t5515/fetch.master_.._.git_one_two
new file mode 100644
index 0000000..81b85aa
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_one_two
@@ -0,0 +1,3 @@
+# master ../.git one two
+8e32a6d901327a23ef831511badce7bf3bf46689	
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	
diff --git a/t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file b/t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file
new file mode 100644
index 0000000..310516b
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file
@@ -0,0 +1,7 @@
+# master ../.git tag tag-one-tree tag tag-three-file
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three b/t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three
new file mode 100644
index 0000000..60dbcff
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three
@@ -0,0 +1,7 @@
+# master ../.git tag tag-one tag tag-three
+8e32a6d901327a23ef831511badce7bf3bf46689	
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_branches-default b/t/t5515/fetch.master_branches-default
new file mode 100644
index 0000000..937d90c
--- /dev/null
+++ b/t/t5515/fetch.master_branches-default
@@ -0,0 +1,8 @@
+# master branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_branches-one b/t/t5515/fetch.master_branches-one
new file mode 100644
index 0000000..30907fb
--- /dev/null
+++ b/t/t5515/fetch.master_branches-one
@@ -0,0 +1,8 @@
+# master branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689	
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_config-explicit b/t/t5515/fetch.master_config-explicit
new file mode 100644
index 0000000..3e77f93
--- /dev/null
+++ b/t/t5515/fetch.master_config-explicit
@@ -0,0 +1,11 @@
+# master config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_config-glob b/t/t5515/fetch.master_config-glob
new file mode 100644
index 0000000..c0bf9d0
--- /dev/null
+++ b/t/t5515/fetch.master_config-glob
@@ -0,0 +1,11 @@
+# master config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_remote-explicit b/t/t5515/fetch.master_remote-explicit
new file mode 100644
index 0000000..2f9d4d3
--- /dev/null
+++ b/t/t5515/fetch.master_remote-explicit
@@ -0,0 +1,11 @@
+# master remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
diff --git a/t/t5515/fetch.master_remote-glob b/t/t5515/fetch.master_remote-glob
new file mode 100644
index 0000000..7a52126
--- /dev/null
+++ b/t/t5515/fetch.master_remote-glob
@@ -0,0 +1,11 @@
+# master remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge
-- 
1.5.0.2.879.gc531d4-dirty

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-04 22:07 [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch Santi Béjar
@ 2007-03-04 23:30 ` Junio C Hamano
  2007-03-05  7:34   ` Santi Béjar
  2007-03-05  8:09 ` Santi Béjar
  1 sibling, 1 reply; 10+ messages in thread
From: Junio C Hamano @ 2007-03-04 23:30 UTC (permalink / raw)
  To: Santi Béjar; +Cc: Git Mailing List

Santi Béjar <sbejar@gmail.com> writes:

> Signed-off-by: Santi Béjar <sbejar@gmail.com>
> ---
>  Hi *,
>
>    it is a much reduced version (63 instead of 400 tests) but contains
>  also tests for the fetched tags (missing anything else?).
>  I think it is suitable to be included.

Thanks.

One thing I found lacking from the last round was that the test
stripped the origin information later used by git-fmt-merge-msg
(which made the test not very helpful when I tried to use it
while working on the partial rewrite of git-fetch you see in the
'next' branch).  I haven't checked your patch this round yet,
but it would be nice to check for that to catch regressions.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-04 23:30 ` Junio C Hamano
@ 2007-03-05  7:34   ` Santi Béjar
  0 siblings, 0 replies; 10+ messages in thread
From: Santi Béjar @ 2007-03-05  7:34 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Git Mailing List

On 3/5/07, Junio C Hamano <junkio@cox.net> wrote:
> Santi Béjar <sbejar@gmail.com> writes:
>
> > Signed-off-by: Santi Béjar <sbejar@gmail.com>
> > ---
> >  Hi *,
> >
> >    it is a much reduced version (63 instead of 400 tests) but contains
> >  also tests for the fetched tags (missing anything else?).
> >  I think it is suitable to be included.
>
> Thanks.
>
> One thing I found lacking from the last round was that the test
> stripped the origin information later used by git-fmt-merge-msg
> (which made the test not very helpful when I tried to use it
> while working on the partial rewrite of git-fetch you see in the
> 'next' branch).  I haven't checked your patch this round yet,
> but it would be nice to check for that to catch regressions.

It is stripped, I'll send another patch with the whole .git/FETCH_HEAD content.

Santi

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-04 22:07 [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch Santi Béjar
  2007-03-04 23:30 ` Junio C Hamano
@ 2007-03-05  8:09 ` Santi Béjar
  2007-03-05  8:23   ` Junio C Hamano
  1 sibling, 1 reply; 10+ messages in thread
From: Santi Béjar @ 2007-03-05  8:09 UTC (permalink / raw)
  To: Git Mailing List; +Cc: Junio C. Hamano

Hi *,

  this version does not remove the "note" feed to git-fmt-merge-msg.
  I've also added two &&.

Santi

P.D.: When sended this way the From: must be quoted or in UTF-8?

-- >8 --
From: =?utf-8?q?Santi_B=C3=A9jar?= <sbejar@gmail.com>
Date: Sun, 4 Mar 2007 20:38:54 +0100
Subject: [PATCH] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch


Signed-off-by: Santi Béjar <sbejar@gmail.com>
---
 t/t5515-fetch-merge-logic.sh                       |  161 ++++++++++++++++++++
 t/t5515/fetch.br-branches-default                  |    8 +
 t/t5515/fetch.br-branches-default-merge            |    8 +
 ...etch.br-branches-default-merge_branches-default |    8 +
 t/t5515/fetch.br-branches-default-octopus          |    8 +
 ...ch.br-branches-default-octopus_branches-default |    8 +
 t/t5515/fetch.br-branches-default_branches-default |    8 +
 t/t5515/fetch.br-branches-one                      |    8 +
 t/t5515/fetch.br-branches-one-merge                |    8 +
 t/t5515/fetch.br-branches-one-merge_branches-one   |    8 +
 t/t5515/fetch.br-branches-one-octopus              |    8 +
 t/t5515/fetch.br-branches-one-octopus_branches-one |    8 +
 t/t5515/fetch.br-branches-one_branches-one         |    8 +
 t/t5515/fetch.br-config-explicit                   |   11 ++
 t/t5515/fetch.br-config-explicit-merge             |   11 ++
 .../fetch.br-config-explicit-merge_config-explicit |   11 ++
 t/t5515/fetch.br-config-explicit-octopus           |   11 ++
 ...etch.br-config-explicit-octopus_config-explicit |   11 ++
 t/t5515/fetch.br-config-explicit_config-explicit   |   11 ++
 t/t5515/fetch.br-config-glob                       |   11 ++
 t/t5515/fetch.br-config-glob-merge                 |   11 ++
 t/t5515/fetch.br-config-glob-merge_config-glob     |   11 ++
 t/t5515/fetch.br-config-glob-octopus               |   11 ++
 t/t5515/fetch.br-config-glob-octopus_config-glob   |   11 ++
 t/t5515/fetch.br-config-glob_config-glob           |   11 ++
 t/t5515/fetch.br-remote-explicit                   |   11 ++
 t/t5515/fetch.br-remote-explicit-merge             |   11 ++
 .../fetch.br-remote-explicit-merge_remote-explicit |   11 ++
 t/t5515/fetch.br-remote-explicit-octopus           |   11 ++
 ...etch.br-remote-explicit-octopus_remote-explicit |   11 ++
 t/t5515/fetch.br-remote-explicit_remote-explicit   |   11 ++
 t/t5515/fetch.br-remote-glob                       |   11 ++
 t/t5515/fetch.br-remote-glob-merge                 |   11 ++
 t/t5515/fetch.br-remote-glob-merge_remote-glob     |   11 ++
 t/t5515/fetch.br-remote-glob-octopus               |   11 ++
 t/t5515/fetch.br-remote-glob-octopus_remote-glob   |   11 ++
 t/t5515/fetch.br-remote-glob_remote-glob           |   11 ++
 t/t5515/fetch.br-unconfig                          |   11 ++
 t/t5515/fetch.br-unconfig_--tags_.._.git           |    7 +
 t/t5515/fetch.br-unconfig_.._.git_one              |    2 +
 ...nfig_.._.git_one_tag_tag-one_tag_tag-three-file |    8 +
 t/t5515/fetch.br-unconfig_.._.git_one_two          |    3 +
 ...fig_.._.git_tag_tag-one-tree_tag_tag-three-file |    7 +
 ...h.br-unconfig_.._.git_tag_tag-one_tag_tag-three |    7 +
 t/t5515/fetch.br-unconfig_branches-default         |    8 +
 t/t5515/fetch.br-unconfig_branches-one             |    8 +
 t/t5515/fetch.br-unconfig_config-explicit          |   11 ++
 t/t5515/fetch.br-unconfig_config-glob              |   11 ++
 t/t5515/fetch.br-unconfig_remote-explicit          |   11 ++
 t/t5515/fetch.br-unconfig_remote-glob              |   11 ++
 t/t5515/fetch.master                               |   11 ++
 t/t5515/fetch.master_--tags_.._.git                |    7 +
 t/t5515/fetch.master_.._.git_one                   |    2 +
 ...ster_.._.git_one_tag_tag-one_tag_tag-three-file |    8 +
 t/t5515/fetch.master_.._.git_one_two               |    3 +
 ...ter_.._.git_tag_tag-one-tree_tag_tag-three-file |    7 +
 .../fetch.master_.._.git_tag_tag-one_tag_tag-three |    7 +
 t/t5515/fetch.master_branches-default              |    8 +
 t/t5515/fetch.master_branches-one                  |    8 +
 t/t5515/fetch.master_config-explicit               |   11 ++
 t/t5515/fetch.master_config-glob                   |   11 ++
 t/t5515/fetch.master_remote-explicit               |   11 ++
 t/t5515/fetch.master_remote-glob                   |   11 ++
 63 files changed, 731 insertions(+), 0 deletions(-)
 create mode 100755 t/t5515-fetch-merge-logic.sh
 create mode 100644 t/t5515/fetch.br-branches-default
 create mode 100644 t/t5515/fetch.br-branches-default-merge
 create mode 100644 t/t5515/fetch.br-branches-default-merge_branches-default
 create mode 100644 t/t5515/fetch.br-branches-default-octopus
 create mode 100644 t/t5515/fetch.br-branches-default-octopus_branches-default
 create mode 100644 t/t5515/fetch.br-branches-default_branches-default
 create mode 100644 t/t5515/fetch.br-branches-one
 create mode 100644 t/t5515/fetch.br-branches-one-merge
 create mode 100644 t/t5515/fetch.br-branches-one-merge_branches-one
 create mode 100644 t/t5515/fetch.br-branches-one-octopus
 create mode 100644 t/t5515/fetch.br-branches-one-octopus_branches-one
 create mode 100644 t/t5515/fetch.br-branches-one_branches-one
 create mode 100644 t/t5515/fetch.br-config-explicit
 create mode 100644 t/t5515/fetch.br-config-explicit-merge
 create mode 100644 t/t5515/fetch.br-config-explicit-merge_config-explicit
 create mode 100644 t/t5515/fetch.br-config-explicit-octopus
 create mode 100644 t/t5515/fetch.br-config-explicit-octopus_config-explicit
 create mode 100644 t/t5515/fetch.br-config-explicit_config-explicit
 create mode 100644 t/t5515/fetch.br-config-glob
 create mode 100644 t/t5515/fetch.br-config-glob-merge
 create mode 100644 t/t5515/fetch.br-config-glob-merge_config-glob
 create mode 100644 t/t5515/fetch.br-config-glob-octopus
 create mode 100644 t/t5515/fetch.br-config-glob-octopus_config-glob
 create mode 100644 t/t5515/fetch.br-config-glob_config-glob
 create mode 100644 t/t5515/fetch.br-remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-explicit-merge
 create mode 100644 t/t5515/fetch.br-remote-explicit-merge_remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-explicit-octopus
 create mode 100644 t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-explicit_remote-explicit
 create mode 100644 t/t5515/fetch.br-remote-glob
 create mode 100644 t/t5515/fetch.br-remote-glob-merge
 create mode 100644 t/t5515/fetch.br-remote-glob-merge_remote-glob
 create mode 100644 t/t5515/fetch.br-remote-glob-octopus
 create mode 100644 t/t5515/fetch.br-remote-glob-octopus_remote-glob
 create mode 100644 t/t5515/fetch.br-remote-glob_remote-glob
 create mode 100644 t/t5515/fetch.br-unconfig
 create mode 100644 t/t5515/fetch.br-unconfig_--tags_.._.git
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_one
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_one_two
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file
 create mode 100644 t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three
 create mode 100644 t/t5515/fetch.br-unconfig_branches-default
 create mode 100644 t/t5515/fetch.br-unconfig_branches-one
 create mode 100644 t/t5515/fetch.br-unconfig_config-explicit
 create mode 100644 t/t5515/fetch.br-unconfig_config-glob
 create mode 100644 t/t5515/fetch.br-unconfig_remote-explicit
 create mode 100644 t/t5515/fetch.br-unconfig_remote-glob
 create mode 100644 t/t5515/fetch.master
 create mode 100644 t/t5515/fetch.master_--tags_.._.git
 create mode 100644 t/t5515/fetch.master_.._.git_one
 create mode 100644 t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file
 create mode 100644 t/t5515/fetch.master_.._.git_one_two
 create mode 100644 t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file
 create mode 100644 t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three
 create mode 100644 t/t5515/fetch.master_branches-default
 create mode 100644 t/t5515/fetch.master_branches-one
 create mode 100644 t/t5515/fetch.master_config-explicit
 create mode 100644 t/t5515/fetch.master_config-glob
 create mode 100644 t/t5515/fetch.master_remote-explicit
 create mode 100644 t/t5515/fetch.master_remote-glob

diff --git a/t/t5515-fetch-merge-logic.sh b/t/t5515-fetch-merge-logic.sh
new file mode 100755
index 0000000..765c83f
--- /dev/null
+++ b/t/t5515-fetch-merge-logic.sh
@@ -0,0 +1,161 @@
+#!/bin/sh
+#
+# Copyright (c) 2007 Santi Béjar, based on t4013 by Junio C Hamano
+#
+#
+
+test_description='Merge logic in fetch'
+
+. ./test-lib.sh
+
+LF='
+'
+
+test_expect_success setup '
+	GIT_AUTHOR_DATE="2006-06-26 00:00:00 +0000" &&
+	GIT_COMMITTER_DATE="2006-06-26 00:00:00 +0000" &&
+	export GIT_AUTHOR_DATE GIT_COMMITTER_DATE &&
+
+	echo >file original &&
+	git add file &&
+	git commit -a -m One &&
+	git tag tag-one &&
+	git tag tag-one-tree HEAD^{tree} &&
+	git branch one &&
+
+	echo two >> file &&
+	git commit -a -m Two &&
+	git tag -a -m "Tag Two" tag-two &&
+	git branch two &&
+
+	echo three >> file &&
+	git commit -a -m Three &&
+	git tag -a -m "Tag Three" tag-three &&
+	git tag -a -m "Tag Three file" tag-three-file HEAD^{tree}:file &&
+	git branch three &&
+
+	echo master >> file &&
+	git commit -a -m Master &&
+	git tag -a -m "Tag Master" tag-master &&
+
+	git checkout three &&
+
+	git clone . cloned &&
+	cd cloned &&
+	git config remote.origin.url ../.git/ &&
+
+	git config remote.config-explicit.url ../.git/ &&
+	git config remote.config-explicit.fetch refs/heads/master:remotes/rem/master &&
+	git config --add remote.config-explicit.fetch refs/heads/one:remotes/rem/one &&
+	git config --add remote.config-explicit.fetch two:remotes/rem/two &&
+	git config --add remote.config-explicit.fetch refs/heads/three:remotes/rem/three &&
+	remotes="config-explicit" &&
+
+	git config remote.config-glob.url ../.git/ &&
+	git config remote.config-glob.fetch refs/heads/*:refs/remotes/rem/* &&
+	remotes="$remotes config-glob" &&
+
+	mkdir -p .git/remotes &&
+	{
+		echo "URL: ../.git/"
+		echo "Pull: refs/heads/master:remotes/rem/master"
+		echo "Pull: refs/heads/one:remotes/rem/one"
+		echo "Pull: two:remotes/rem/two"
+		echo "Pull: refs/heads/three:remotes/rem/three"
+	} >.git/remotes/remote-explicit &&
+	remotes="$remotes remote-explicit" &&
+
+	{
+		echo "URL: ../.git/"
+		echo "Pull: refs/heads/*:refs/remotes/rem/*"
+	} >.git/remotes/remote-glob &&
+	remotes="$remotes remote-glob" &&
+
+	mkdir -p .git/branches &&
+	echo "../.git" > .git/branches/branches-default &&
+	remotes="$remotes branches-default" &&
+
+	echo "../.git#one" > .git/branches/branches-one &&
+	remotes="$remotes branches-one" &&
+
+	for remote in $remotes ; do
+		git config branch.br-$remote.remote $remote &&
+		git config branch.br-$remote-merge.remote $remote &&
+		git config branch.br-$remote-merge.merge refs/heads/three &&
+		git config branch.br-$remote-octopus.remote $remote &&
+		git config branch.br-$remote-octopus.merge refs/heads/one &&
+		git config --add branch.br-$remote-octopus.merge two &&
+		git config --add branch.br-$remote-octopus.merge remotes/rem/three
+	done
+'
+
+# Merge logic depends on branch properties and Pull: or .fetch lines
+for remote in $remotes ; do
+    for branch in "" "-merge" "-octopus" ; do
+cat <<EOF
+br-$remote$branch
+br-$remote$branch $remote
+EOF
+    done
+done > tests
+
+# Merge logic does not depend on branch properties,
+# but does depend on Pull: or fetch lines.
+# Use two branches completely unrelated from the arguments,
+# the clone default and one without branch properties
+for branch in master br-unconfig ; do
+    echo $branch
+    for remote in $remotes ; do
+	echo $branch $remote
+    done
+done >> tests
+
+# Merge logic does not depend on branch properties
+# neither in the Pull: or .fetch config
+for branch in master br-unconfig ; do
+    cat <<EOF
+$branch ../.git one
+$branch ../.git one two
+$branch --tags ../.git
+$branch ../.git tag tag-one tag tag-three
+$branch ../.git tag tag-one-tree tag tag-three-file
+$branch ../.git one tag tag-one tag tag-three-file
+EOF
+done >> tests
+
+while read cmd
+do
+	case "$cmd" in
+	'' | '#'*) continue ;;
+	esac
+	test=`echo "$cmd" | sed -e 's|[/ ][/ ]*|_|g'`
+	cnt=`expr $test_count + 1`
+	pfx=`printf "%04d" $cnt`
+	expect="../../t5515/fetch.$test"
+	actual="$pfx-fetch.$test"
+
+	test_expect_success "$cmd" '
+		{
+			echo "# $cmd"
+			set x $cmd; shift
+			git symbolic-ref HEAD refs/heads/$1 ; shift
+			rm -f .git/FETCH_HEAD
+			rm -f .git/refs/heads/*
+			rm -f .git/refs/remotes/rem/*
+			rm -f .git/refs/tags/*
+			git fetch "$@" >/dev/null
+			cat .git/FETCH_HEAD
+		} >"$actual" &&
+		if test -f "$expect"
+		then
+			diff -u "$expect" "$actual" &&
+			rm -f "$actual"
+		else
+			# this is to help developing new tests.
+			cp "$actual" "$expect"
+			false
+		fi
+	'
+done < tests
+
+test_done
diff --git a/t/t5515/fetch.br-branches-default b/t/t5515/fetch.br-branches-default
new file mode 100644
index 0000000..2e0414f
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default
@@ -0,0 +1,8 @@
+# br-branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-default-merge b/t/t5515/fetch.br-branches-default-merge
new file mode 100644
index 0000000..ea65f31
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-merge
@@ -0,0 +1,8 @@
+# br-branches-default-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-default-merge_branches-default b/t/t5515/fetch.br-branches-default-merge_branches-default
new file mode 100644
index 0000000..7b5fa94
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-merge_branches-default
@@ -0,0 +1,8 @@
+# br-branches-default-merge branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-default-octopus b/t/t5515/fetch.br-branches-default-octopus
new file mode 100644
index 0000000..128397d
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-octopus
@@ -0,0 +1,8 @@
+# br-branches-default-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-default-octopus_branches-default b/t/t5515/fetch.br-branches-default-octopus_branches-default
new file mode 100644
index 0000000..4b37cd4
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default-octopus_branches-default
@@ -0,0 +1,8 @@
+# br-branches-default-octopus branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-default_branches-default b/t/t5515/fetch.br-branches-default_branches-default
new file mode 100644
index 0000000..4a2bf3c
--- /dev/null
+++ b/t/t5515/fetch.br-branches-default_branches-default
@@ -0,0 +1,8 @@
+# br-branches-default branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-one b/t/t5515/fetch.br-branches-one
new file mode 100644
index 0000000..12ac8d2
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one
@@ -0,0 +1,8 @@
+# br-branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-one-merge b/t/t5515/fetch.br-branches-one-merge
new file mode 100644
index 0000000..3a4e77e
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-merge
@@ -0,0 +1,8 @@
+# br-branches-one-merge
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-one-merge_branches-one b/t/t5515/fetch.br-branches-one-merge_branches-one
new file mode 100644
index 0000000..00e04b4
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-merge_branches-one
@@ -0,0 +1,8 @@
+# br-branches-one-merge branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-one-octopus b/t/t5515/fetch.br-branches-one-octopus
new file mode 100644
index 0000000..53fe808
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-octopus
@@ -0,0 +1,8 @@
+# br-branches-one-octopus
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-one-octopus_branches-one b/t/t5515/fetch.br-branches-one-octopus_branches-one
new file mode 100644
index 0000000..41b18ff
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one-octopus_branches-one
@@ -0,0 +1,8 @@
+# br-branches-one-octopus branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-branches-one_branches-one b/t/t5515/fetch.br-branches-one_branches-one
new file mode 100644
index 0000000..281fa09
--- /dev/null
+++ b/t/t5515/fetch.br-branches-one_branches-one
@@ -0,0 +1,8 @@
+# br-branches-one branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-explicit b/t/t5515/fetch.br-config-explicit
new file mode 100644
index 0000000..e2fa9c8
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-explicit-merge b/t/t5515/fetch.br-config-explicit-merge
new file mode 100644
index 0000000..ec1a723
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-merge
@@ -0,0 +1,11 @@
+# br-config-explicit-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-explicit-merge_config-explicit b/t/t5515/fetch.br-config-explicit-merge_config-explicit
new file mode 100644
index 0000000..54f6891
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-merge_config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit-merge config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-explicit-octopus b/t/t5515/fetch.br-config-explicit-octopus
new file mode 100644
index 0000000..7011dfc
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-octopus
@@ -0,0 +1,11 @@
+# br-config-explicit-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8		branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-explicit-octopus_config-explicit b/t/t5515/fetch.br-config-explicit-octopus_config-explicit
new file mode 100644
index 0000000..bdad51f
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit-octopus_config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit-octopus config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8		branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-explicit_config-explicit b/t/t5515/fetch.br-config-explicit_config-explicit
new file mode 100644
index 0000000..1b237dd
--- /dev/null
+++ b/t/t5515/fetch.br-config-explicit_config-explicit
@@ -0,0 +1,11 @@
+# br-config-explicit config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-glob b/t/t5515/fetch.br-config-glob
new file mode 100644
index 0000000..e75ec2f
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob
@@ -0,0 +1,11 @@
+# br-config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-glob-merge b/t/t5515/fetch.br-config-glob-merge
new file mode 100644
index 0000000..ce8f739
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-merge
@@ -0,0 +1,11 @@
+# br-config-glob-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-glob-merge_config-glob b/t/t5515/fetch.br-config-glob-merge_config-glob
new file mode 100644
index 0000000..5817bed
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-merge_config-glob
@@ -0,0 +1,11 @@
+# br-config-glob-merge config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-glob-octopus b/t/t5515/fetch.br-config-glob-octopus
new file mode 100644
index 0000000..9ee213e
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-octopus
@@ -0,0 +1,11 @@
+# br-config-glob-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-glob-octopus_config-glob b/t/t5515/fetch.br-config-glob-octopus_config-glob
new file mode 100644
index 0000000..44bd0ec
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob-octopus_config-glob
@@ -0,0 +1,11 @@
+# br-config-glob-octopus config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-config-glob_config-glob b/t/t5515/fetch.br-config-glob_config-glob
new file mode 100644
index 0000000..a6c20f9
--- /dev/null
+++ b/t/t5515/fetch.br-config-glob_config-glob
@@ -0,0 +1,11 @@
+# br-config-glob config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-explicit b/t/t5515/fetch.br-remote-explicit
new file mode 100644
index 0000000..83534d2
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-explicit-merge b/t/t5515/fetch.br-remote-explicit-merge
new file mode 100644
index 0000000..a9064dd
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-merge
@@ -0,0 +1,11 @@
+# br-remote-explicit-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-explicit-merge_remote-explicit b/t/t5515/fetch.br-remote-explicit-merge_remote-explicit
new file mode 100644
index 0000000..732a37e
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-merge_remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit-merge remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-explicit-octopus b/t/t5515/fetch.br-remote-explicit-octopus
new file mode 100644
index 0000000..ecf020d
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-octopus
@@ -0,0 +1,11 @@
+# br-remote-explicit-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8		branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-explicit-octopus_remote-explicit b/t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
new file mode 100644
index 0000000..af77531
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit-octopus_remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit-octopus remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8		branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-explicit_remote-explicit b/t/t5515/fetch.br-remote-explicit_remote-explicit
new file mode 100644
index 0000000..51fae56
--- /dev/null
+++ b/t/t5515/fetch.br-remote-explicit_remote-explicit
@@ -0,0 +1,11 @@
+# br-remote-explicit remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-glob b/t/t5515/fetch.br-remote-glob
new file mode 100644
index 0000000..94e6ad3
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-glob-merge b/t/t5515/fetch.br-remote-glob-merge
new file mode 100644
index 0000000..09362e2
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-merge
@@ -0,0 +1,11 @@
+# br-remote-glob-merge
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-glob-merge_remote-glob b/t/t5515/fetch.br-remote-glob-merge_remote-glob
new file mode 100644
index 0000000..e2eabec
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-merge_remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob-merge remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-glob-octopus b/t/t5515/fetch.br-remote-glob-octopus
new file mode 100644
index 0000000..c1554f8
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-octopus
@@ -0,0 +1,11 @@
+# br-remote-glob-octopus
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-glob-octopus_remote-glob b/t/t5515/fetch.br-remote-glob-octopus_remote-glob
new file mode 100644
index 0000000..e613434
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob-octopus_remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob-octopus remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-remote-glob_remote-glob b/t/t5515/fetch.br-remote-glob_remote-glob
new file mode 100644
index 0000000..646dbc8
--- /dev/null
+++ b/t/t5515/fetch.br-remote-glob_remote-glob
@@ -0,0 +1,11 @@
+# br-remote-glob remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig b/t/t5515/fetch.br-unconfig
new file mode 100644
index 0000000..65ce6d9
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig
@@ -0,0 +1,11 @@
+# br-unconfig
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_--tags_.._.git b/t/t5515/fetch.br-unconfig_--tags_.._.git
new file mode 100644
index 0000000..8258c80
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_--tags_.._.git
@@ -0,0 +1,7 @@
+# br-unconfig --tags ../.git
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_.._.git_one b/t/t5515/fetch.br-unconfig_.._.git_one
new file mode 100644
index 0000000..11eb5a6
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_one
@@ -0,0 +1,2 @@
+# br-unconfig ../.git one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
diff --git a/t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file b/t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file
new file mode 100644
index 0000000..f02bab2
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_one_tag_tag-one_tag_tag-three-file
@@ -0,0 +1,8 @@
+# br-unconfig ../.git one tag tag-one tag tag-three-file
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		tag 'tag-one' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_.._.git_one_two b/t/t5515/fetch.br-unconfig_.._.git_one_two
new file mode 100644
index 0000000..3f1be22
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_one_two
@@ -0,0 +1,3 @@
+# br-unconfig ../.git one two
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8		branch 'two' of ../
diff --git a/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file
new file mode 100644
index 0000000..85de411
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one-tree_tag_tag-three-file
@@ -0,0 +1,7 @@
+# br-unconfig ../.git tag tag-one-tree tag tag-three-file
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three
new file mode 100644
index 0000000..0da2337
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_.._.git_tag_tag-one_tag_tag-three
@@ -0,0 +1,7 @@
+# br-unconfig ../.git tag tag-one tag tag-three
+8e32a6d901327a23ef831511badce7bf3bf46689		tag 'tag-one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		tag 'tag-three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_branches-default b/t/t5515/fetch.br-unconfig_branches-default
new file mode 100644
index 0000000..fc7041e
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_branches-default
@@ -0,0 +1,8 @@
+# br-unconfig branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_branches-one b/t/t5515/fetch.br-unconfig_branches-one
new file mode 100644
index 0000000..e94cde7
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_branches-one
@@ -0,0 +1,8 @@
+# br-unconfig branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_config-explicit b/t/t5515/fetch.br-unconfig_config-explicit
new file mode 100644
index 0000000..01a283e
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_config-explicit
@@ -0,0 +1,11 @@
+# br-unconfig config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_config-glob b/t/t5515/fetch.br-unconfig_config-glob
new file mode 100644
index 0000000..3a556c5
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_config-glob
@@ -0,0 +1,11 @@
+# br-unconfig config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_remote-explicit b/t/t5515/fetch.br-unconfig_remote-explicit
new file mode 100644
index 0000000..db216df
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_remote-explicit
@@ -0,0 +1,11 @@
+# br-unconfig remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.br-unconfig_remote-glob b/t/t5515/fetch.br-unconfig_remote-glob
new file mode 100644
index 0000000..aee65c2
--- /dev/null
+++ b/t/t5515/fetch.br-unconfig_remote-glob
@@ -0,0 +1,11 @@
+# br-unconfig remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master b/t/t5515/fetch.master
new file mode 100644
index 0000000..950fd07
--- /dev/null
+++ b/t/t5515/fetch.master
@@ -0,0 +1,11 @@
+# master
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_--tags_.._.git b/t/t5515/fetch.master_--tags_.._.git
new file mode 100644
index 0000000..0e59950
--- /dev/null
+++ b/t/t5515/fetch.master_--tags_.._.git
@@ -0,0 +1,7 @@
+# master --tags ../.git
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_.._.git_one b/t/t5515/fetch.master_.._.git_one
new file mode 100644
index 0000000..35deddb
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_one
@@ -0,0 +1,2 @@
+# master ../.git one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
diff --git a/t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file b/t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file
new file mode 100644
index 0000000..8286852
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_one_tag_tag-one_tag_tag-three-file
@@ -0,0 +1,8 @@
+# master ../.git one tag tag-one tag tag-three-file
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689		tag 'tag-one' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_.._.git_one_two b/t/t5515/fetch.master_.._.git_one_two
new file mode 100644
index 0000000..35ec578
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_one_two
@@ -0,0 +1,3 @@
+# master ../.git one two
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8		branch 'two' of ../
diff --git a/t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file b/t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file
new file mode 100644
index 0000000..2e133ef
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_tag_tag-one-tree_tag_tag-three-file
@@ -0,0 +1,7 @@
+# master ../.git tag tag-one-tree tag tag-three-file
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three b/t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three
new file mode 100644
index 0000000..92b18b4
--- /dev/null
+++ b/t/t5515/fetch.master_.._.git_tag_tag-one_tag_tag-three
@@ -0,0 +1,7 @@
+# master ../.git tag tag-one tag tag-three
+8e32a6d901327a23ef831511badce7bf3bf46689		tag 'tag-one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b		tag 'tag-three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_branches-default b/t/t5515/fetch.master_branches-default
new file mode 100644
index 0000000..603d6d2
--- /dev/null
+++ b/t/t5515/fetch.master_branches-default
@@ -0,0 +1,8 @@
+# master branches-default
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_branches-one b/t/t5515/fetch.master_branches-one
new file mode 100644
index 0000000..fe9bb0b
--- /dev/null
+++ b/t/t5515/fetch.master_branches-one
@@ -0,0 +1,8 @@
+# master branches-one
+8e32a6d901327a23ef831511badce7bf3bf46689		branch 'one' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_config-explicit b/t/t5515/fetch.master_config-explicit
new file mode 100644
index 0000000..4be97c7
--- /dev/null
+++ b/t/t5515/fetch.master_config-explicit
@@ -0,0 +1,11 @@
+# master config-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_config-glob b/t/t5515/fetch.master_config-glob
new file mode 100644
index 0000000..cb0726f
--- /dev/null
+++ b/t/t5515/fetch.master_config-glob
@@ -0,0 +1,11 @@
+# master config-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_remote-explicit b/t/t5515/fetch.master_remote-explicit
new file mode 100644
index 0000000..44a1ca8
--- /dev/null
+++ b/t/t5515/fetch.master_remote-explicit
@@ -0,0 +1,11 @@
+# master remote-explicit
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f		branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
diff --git a/t/t5515/fetch.master_remote-glob b/t/t5515/fetch.master_remote-glob
new file mode 100644
index 0000000..724e8db
--- /dev/null
+++ b/t/t5515/fetch.master_remote-glob
@@ -0,0 +1,11 @@
+# master remote-glob
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	branch 'master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	branch 'one' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	branch 'three' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	branch 'two' of ../
+754b754407bf032e9a2f9d5a9ad05ca79a6b228f	not-for-merge	tag 'tag-master' of ../
+8e32a6d901327a23ef831511badce7bf3bf46689	not-for-merge	tag 'tag-one' of ../
+22feea448b023a2d864ef94b013735af34d238ba	not-for-merge	tag 'tag-one-tree' of ../
+0567da4d5edd2ff4bb292a465ba9e64dcad9536b	not-for-merge	tag 'tag-three' of ../
+0e3b14047d3ee365f4f2a1b673db059c3972589c	not-for-merge	tag 'tag-three-file' of ../
+6134ee8f857693b96ff1cc98d3e2fd62b199e5a8	not-for-merge	tag 'tag-two' of ../
-- 
1.5.0.2.878.g38f47

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-05  8:09 ` Santi Béjar
@ 2007-03-05  8:23   ` Junio C Hamano
  2007-03-05  8:28     ` Junio C Hamano
  2007-03-05  8:28     ` Joshua N Pritikin
  0 siblings, 2 replies; 10+ messages in thread
From: Junio C Hamano @ 2007-03-05  8:23 UTC (permalink / raw)
  To: Santi Béjar; +Cc: Git Mailing List, Junio C. Hamano

Santi Béjar <sbejar@gmail.com> writes:

> P.D.: When sended this way the From: must be quoted or in UTF-8?

Absolutely not.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-05  8:23   ` Junio C Hamano
@ 2007-03-05  8:28     ` Junio C Hamano
  2007-03-05  8:28     ` Joshua N Pritikin
  1 sibling, 0 replies; 10+ messages in thread
From: Junio C Hamano @ 2007-03-05  8:28 UTC (permalink / raw)
  To: Santi Béjar; +Cc: Git Mailing List, Junio C. Hamano

Junio C Hamano <junkio@cox.net> writes:

> Santi Béjar <sbejar@gmail.com> writes:
>
>> P.D.: When sended this way the From: must be quoted or in UTF-8?
>
> Absolutely not.

But there is no need to resend.  I'll apply it to 'master'
before going to bed.

Thanks.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-05  8:23   ` Junio C Hamano
  2007-03-05  8:28     ` Junio C Hamano
@ 2007-03-05  8:28     ` Joshua N Pritikin
  2007-03-05  8:36       ` Santi Béjar
  2007-03-05  8:37       ` Junio C Hamano
  1 sibling, 2 replies; 10+ messages in thread
From: Joshua N Pritikin @ 2007-03-05  8:28 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Git Mailing List

On Mon, Mar 05, 2007 at 12:23:05AM -0800, Junio C Hamano wrote:
> Santi Béjar <sbejar@gmail.com> writes:
> > P.D.: When sended this way the From: must be quoted or in UTF-8?
> 
> Absolutely not.

I think Junio meant that UTF-8 is OK. At least it is okay here in mutt.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-05  8:28     ` Joshua N Pritikin
@ 2007-03-05  8:36       ` Santi Béjar
  2007-03-05  8:40         ` Junio C Hamano
  2007-03-05  8:37       ` Junio C Hamano
  1 sibling, 1 reply; 10+ messages in thread
From: Santi Béjar @ 2007-03-05  8:36 UTC (permalink / raw)
  To: Joshua N Pritikin; +Cc: Junio C Hamano, Git Mailing List

On 3/5/07, Joshua N Pritikin <jpritikin@pobox.com> wrote:
> On Mon, Mar 05, 2007 at 12:23:05AM -0800, Junio C Hamano wrote:
> > Santi Béjar <sbejar@gmail.com> writes:
> > > P.D.: When sended this way the From: must be quoted or in UTF-8?
> >
> > Absolutely not.
>
> I think Junio meant that UTF-8 is OK. At least it is okay here in mutt.

OK, thanks. So the next question is if git-format-patch needs a flag
to indicate that?

--in-body?

Santi

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-05  8:28     ` Joshua N Pritikin
  2007-03-05  8:36       ` Santi Béjar
@ 2007-03-05  8:37       ` Junio C Hamano
  1 sibling, 0 replies; 10+ messages in thread
From: Junio C Hamano @ 2007-03-05  8:37 UTC (permalink / raw)
  To: Joshua N Pritikin; +Cc: Git Mailing List

Joshua N Pritikin <jpritikin@pobox.com> writes:

> On Mon, Mar 05, 2007 at 12:23:05AM -0800, Junio C Hamano wrote:
>> Santi Béjar <sbejar@gmail.com> writes:
>> > P.D.: When sended this way the From: must be quoted or in UTF-8?
>> 
>> Absolutely not.
>
> I think Junio meant that UTF-8 is OK. At least it is okay here in mutt.

Correct.  Sorry to be too terse.  It is my bad habit I cannot
shake off.  My apologies to Santi and you for clarifying.

When you override the author name with an in-body From: line,
that line is just part of the body text and you do not have to
(and you shouldn't) quote as in the real From: header.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch
  2007-03-05  8:36       ` Santi Béjar
@ 2007-03-05  8:40         ` Junio C Hamano
  0 siblings, 0 replies; 10+ messages in thread
From: Junio C Hamano @ 2007-03-05  8:40 UTC (permalink / raw)
  To: Santi Béjar; +Cc: Joshua N Pritikin, Junio C Hamano, Git Mailing List

"Santi Béjar" <sbejar@gmail.com> writes:

> On 3/5/07, Joshua N Pritikin <jpritikin@pobox.com> wrote:
>> On Mon, Mar 05, 2007 at 12:23:05AM -0800, Junio C Hamano wrote:
>> > Santi Béjar <sbejar@gmail.com> writes:
>> > > P.D.: When sended this way the From: must be quoted or in UTF-8?
>> >
>> > Absolutely not.
>>
>> I think Junio meant that UTF-8 is OK. At least it is okay here in mutt.
>
> OK, thanks. So the next question is if git-format-patch needs a flag
> to indicate that?

I do not think so.  It is a tool to produce a fake mailbox, and
when it says "From: " it really means it is producing the header
line.

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2007-03-05  8:40 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-04 22:07 [PATCHv2] t/t5515-fetch-merge-logic.sh: Added tests for the merge login in git-fetch Santi Béjar
2007-03-04 23:30 ` Junio C Hamano
2007-03-05  7:34   ` Santi Béjar
2007-03-05  8:09 ` Santi Béjar
2007-03-05  8:23   ` Junio C Hamano
2007-03-05  8:28     ` Junio C Hamano
2007-03-05  8:28     ` Joshua N Pritikin
2007-03-05  8:36       ` Santi Béjar
2007-03-05  8:40         ` Junio C Hamano
2007-03-05  8:37       ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox