threads / discuss / 19309

How can I remove a remote branch from local repo that is removed at the server side

Subject: How can I remove a remote branch from local repo that is removed at the server side

## tl;dr

3 messages between May 12, 2009 and May 12, 2009.

replies: 2people: 3as markdown or json

Yakup Akbay· May 12, 2009, 06:56 UTC · lore
Hi,
consider the following situation:
    adg@adghp:~/myrepo$ git branch -a
    * master
      origin/HEAD
      origin/master
      origin/work

I want to remove origin/work from my local repository which is no more existing at the origin. git fetch (or pull) does not help either. However, it disappears when I remove the following line in .git/packed-refs file:

    021a032317425b136b5430c7dead94328996b9d0 refs/remotes/origin/work
Is there command line version to do it?

Regards, Yakup

Ubicom's HQ in Sunnyvale has Moved! Our New Address is: 195 Baypointe Parkway San Jose, CA 95134 (408)433-3330 - Main# (408)433-3339 - Fax# www.ubicom.com

Björn Steinbrink· May 12, 2009, 07:27 UTC · re: Yakup Akbay · lore

Re: How can I remove a remote branch from local repo that is removed at the server side

On 2009.05.12 09:56:51 +0300, Yakup Akbay wrote:
Show 18 quoted lines
> Hi,
>
> consider the following situation:
>
>    adg@adghp:~/myrepo$ git branch -a
>    * master
>      origin/HEAD
>      origin/master
>      origin/work
>
> I want to remove origin/work from my local repository which is no more  
> existing at the origin. git fetch (or pull) does not help either.  
> However, it disappears when I remove the following line in  
> .git/packed-refs file:
>
>    021a032317425b136b5430c7dead94328996b9d0 refs/remotes/origin/work
>
> Is there command line version to do it?
To manually delete the remote tracking branch:
	git branch -r -d origin/work
To prune all remote tracking branches for "origin" for which the
corresponding branch on the remote is gone:
	git remote prune origin
Björn
Johannes Sixt· May 12, 2009, 07:32 UTC · re: Yakup Akbay · lore

Re: How can I remove a remote branch from local repo that is removed at the server side

Yakup Akbay schrieb:
Show 18 quoted lines
> Hi,
> 
> consider the following situation:
> 
>    adg@adghp:~/myrepo$ git branch -a
>    * master
>      origin/HEAD
>      origin/master
>      origin/work
> 
> I want to remove origin/work from my local repository which is no more
> existing at the origin. git fetch (or pull) does not help either.
> However, it disappears when I remove the following line in
> .git/packed-refs file:
> 
>    021a032317425b136b5430c7dead94328996b9d0 refs/remotes/origin/work
> 
> Is there command line version to do it?
Two options:
  git branch -D -r origin/work
  git remote prune origin

The second removes *all* of origin's tracking branches that are not in the remote anymore. Use it only if you are sure you want that to happen.

-- Hannes

← back to recent threads