Delete branches listed by git branch -a

前端 未结 4 738
Happy的楠姐
Happy的楠姐 2021-02-12 11:44

The command git branch -a lists a bunch of branches that are NOT on the repository, and NOT local branches. How can these be deleted?

* develop
  m         


        
相关标签:
4条回答
  • 2021-02-12 12:04

    It may also happen that the remote repository reference has been deleted from the local clone, but still appears in the output of the 'git branch -a' command. In any case, you can always suppress any reference simply by deleting the corresponding files:

    $ rm -f .git/refs/remotes/cloner
    $ rm -rf .git/refs/remotes/deprecated_remote
    
    0 讨论(0)
  • 2021-02-12 12:12

    To delete a branch which is not needed anymore you can use the following command :

    git branch -d -r origin/cloner
    
    0 讨论(0)
  • 2021-02-12 12:26

    You also do

    git push origin :cloner 
    

    To remove unwanted remote branches

    0 讨论(0)
  • 2021-02-12 12:29

    If you have remote-tracking branches (such as origin/cloner in this case) which are left over after the corresponding branch has been deleted in the remote repository, you can delete all such remote-tracking branches with:

    git remote prune origin
    

    The documentation for git remote explains this as:

    Deletes all stale remote-tracking branches under <name>. These stale branches have already been removed from the remote repository referenced by <name>, but are still locally available in "remotes/<name>".

    With --dry-run option, report what branches will be pruned, but do not actually prune them.

    0 讨论(0)
提交回复
热议问题