threads / discuss / 43098

Unnecessary fetch warning

Subject: Unnecessary fetch warning

## tl;dr

2 messages between Dec 18, 2006 and Dec 19, 2006.

replies: 1people: 2as markdown or json

Shawn Pearce· Dec 18, 2006, 08:16 UTC · lore
Current 'next':
  $ git fetch
  Warning: No merge candidate found because value of config option
           "branch.sp/username-reflog.merge" does not match any remote branch fetched.
uhhh.. i asked for a fetch, not a merge.

I have no branch.*.merge or branch.*.remote in my .git/config, and I only use the remote.*.url/remote.*.fetch format for my remote configs.

Commit 62b339a5 added the warning, and its intended for pull, but it is tripping during fetch too.

What about removing this warning from fetch, letting it mark everything as `not-for-merge` and let pull trigger the warning instead?

Josef Weidendorfer· Dec 19, 2006, 01:01 UTC · re: Shawn Pearce · lore

[PATCH] Move "no merge candidate" warning into git-pull

The warning triggered even when running "git fetch" only when resulting .git/FETCH_HEAD only contained branches marked as 'not-for-merge'.

Signed-off-by: Josef Weidendorfer <weidendo@gmx.de>
---
[Resent to mailing list; I forgot to add it]
On Monday 18 December 2006 09:16, Shawn Pearce <spearce@spearce.org> wrote:
Show 7 quoted lines
> Current 'next':
> 
>   $ git fetch
>   Warning: No merge candidate found because value of config option
>            "branch.sp/username-reflog.merge" does not match any remote branch fetched.
> 
> uhhh.. i asked for a fetch, not a merge.

Oops. I hope this does it right. Testing by the same person which does the patch is obviously almost the same as not testing at all.

Josef
 git-parse-remote.sh |   10 ----------
 git-pull.sh         |    4 ++++
 2 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/git-parse-remote.sh b/git-parse-remote.sh
index 6ae534b..d02f404 100755
--- a/git-parse-remote.sh
+++ b/git-parse-remote.sh
@@ -134,7 +134,6 @@ canon_refs_list_for_fetch () {
 	# or the first one otherwise; add prefix . to the rest
 	# to prevent the secondary branches to be merged by default.
 	merge_branches=
-	found_mergeref=
 	curr_branch=
 	if test "$1" = "-d"
 	then
@@ -173,10 +172,6 @@ canon_refs_list_for_fetch () {
 			    dot_prefix= && break
 			done
 		fi
-		if test -z $dot_prefix
-		then
-			found_mergeref=true
-		fi
 		case "$remote" in
 		'') remote=HEAD ;;
 		refs/heads/* | refs/tags/* | refs/remotes/*) ;;
@@ -197,11 +192,6 @@ canon_refs_list_for_fetch () {
 		fi
 		echo "${dot_prefix}${force}${remote}:${local}"
 	done
-	if test -z "$found_mergeref" -a "$curr_branch"
-	then
-		echo >&2 "Warning: No merge candidate found because value of config option
-         \"branch.${curr_branch}.merge\" does not match any remote branch fetched."
-	fi
 }
 
 # Returns list of src: (no store), or src:dst (store)
diff --git a/git-pull.sh b/git-pull.sh
index e23beb6..1703091 100755
--- a/git-pull.sh
+++ b/git-pull.sh
@@ -76,6 +76,10 @@ merge_head=$(sed -e '/	not-for-merge	/d' \
 
 case "$merge_head" in
 '')
+	curr_branch=$(git-symbolic-ref HEAD | \
+		sed -e 's|^refs/heads/||')
+	echo >&2 "Warning: No merge candidate found because value of config option
+         \"branch.${curr_branch}.merge\" does not match any remote branch fetched."
 	echo >&2 "No changes."
 	exit 0
 	;;
-- 
1.4.4.2.gee60-dirty

← back to recent threads