diff options
author | Jeff King <peff@peff.net> | 2008-04-22 07:11:13 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-04-24 22:30:31 -0700 |
commit | 1ce89cc4bb18b0e66f7073562d6634f6a9841335 (patch) | |
tree | 13dce1f6404c0d9a759d29cc7902e0ea7b3915b9 | |
parent | push: allow unqualified dest refspecs to DWIM (diff) | |
download | tgif-1ce89cc4bb18b0e66f7073562d6634f6a9841335.tar.xz |
remote: create fetch config lines with '+'
Since git-remote always uses remote tracking branches, it
should be safe to always force updates of those branches.
I.e., we should generate
fetch = +refs/heads/*:refs/remotes/$remote/*
instead of
fetch = refs/heads/*:refs/remotes/$remote/*
This was the behavior of the perl version, which seems to
have been lost in the C rewrite.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin-remote.c | 1 | ||||
-rwxr-xr-x | t/t5505-remote.sh | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/builtin-remote.c b/builtin-remote.c index 8fe31dbd9a..4149f3b3ce 100644 --- a/builtin-remote.c +++ b/builtin-remote.c @@ -105,6 +105,7 @@ static int add(int argc, const char **argv) struct path_list_item *item = track.items + i; strbuf_reset(&buf2); + strbuf_addch(&buf2, '+'); if (mirror) strbuf_addf(&buf2, "refs/%s:refs/%s", item->path, item->path); diff --git a/t/t5505-remote.sh b/t/t5505-remote.sh index af2d077792..48ff2d424d 100755 --- a/t/t5505-remote.sh +++ b/t/t5505-remote.sh @@ -77,6 +77,16 @@ test_expect_success 'add another remote' ' ) ' +test_expect_success 'remote forces tracking branches' ' +( + cd test && + case `git config remote.second.fetch` in + +*) true ;; + *) false ;; + esac +) +' + test_expect_success 'remove remote' ' ( cd test && |