From 60e5eee0f1a70e09f28d1e55b3aaddb59eeea887 Mon Sep 17 00:00:00 2001 From: Martin von Zweigbergk Date: Thu, 1 Sep 2011 20:50:34 -0400 Subject: remote: "rename o foo" should not rename ref "origin/bar" When renaming a remote called 'o' using 'git remote rename o foo', git should also rename any remote-tracking branches for the remote. This does happen, but any remote-tracking branches starting with 'refs/remotes/o', such as 'refs/remotes/origin/bar', will also be renamed (to 'refs/remotes/foorigin/bar' in this case). Fix it by simply matching one more character, up to the slash following the remote name. Signed-off-by: Martin von Zweigbergk Signed-off-by: Junio C Hamano --- builtin/remote.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'builtin/remote.c') diff --git a/builtin/remote.c b/builtin/remote.c index af96849dc9..180da895be 100644 --- a/builtin/remote.c +++ b/builtin/remote.c @@ -580,7 +580,7 @@ static int read_remote_branches(const char *refname, unsigned char orig_sha1[20]; const char *symref; - strbuf_addf(&buf, "refs/remotes/%s", rename->old); + strbuf_addf(&buf, "refs/remotes/%s/", rename->old); if (!prefixcmp(refname, buf.buf)) { item = string_list_append(rename->remote_branches, xstrdup(refname)); symref = resolve_ref(refname, orig_sha1, 1, &flag); -- cgit v1.3-5-g45d5