Re: [Newbie] How to *actually* get rid of remote tracking branch?
From: Jakub Narebski <hidden>
Date: 2016-06-15 22:43:50
Sergei Organov [off-list ref] wrote:
Jakub Narebski [off-list ref] writes:quoted
Sergei Organov wrote:
quoted
quoted
I want to get rid of origin/pu remote tracking branch. What do I do? I RTFM git-branch. What does it suggest? git branch -d -r origin/pu So far so good. However, it doesn't seem to work in practice:
[...]
quoted
quoted
$ git branch -d -r origin/pu Deleted remote branch origin/pu. $ git remote show origin * remote origin URL: git://git.kernel.org/pub/scm/git/git.git Remote branch(es) merged with 'git pull' while on branch master master New remote branches (next fetch will store in remotes/origin) pu ^^^^^^^^^^^^^^^^^^^ What??? Tracked remote branches html maint man master next todoCheck out what do you have in .git/config file, in the [remote "origin"] section. Most probably (if you cloned this repository using new enough git) you have wildcard refspec there, which means that git would pick all new branches when fetching / pulling from given repository.Sure, I've cloned git.git using rather recent git, so .git/config has: fetch = +refs/heads/*:refs/remotes/origin/*
[...]
Isn't "git branch -d -r" supposed to do whatever magic is required to get rid of the remote branch? Currently it seems like a bug introduced by addition of wildcards refspecs, right?
No, the '-r' part translates 'pu' into 'refs/remotes/origin/pu', and the '-d' option removes branch locally. It is meant I think to remove tracking of branches which were dropped in remote, as I think that wildcard refspec does create new branches, but do not delete dropped branches. So I'm not sure if it is a bug, misfeature or a feature. Can anyone better versed in wildcard refspecs speak up, please? -- Jakub Narebski Poland