Q:

Delete branches listed by git branch -a

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
  master
  remotes/origin/cloner

For example, remotes/origin/cloner used to exist in the repo, but it has since been deleted and I'd like it not to appear when typing git branch -a. 

A:

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.

A:

To delete a branch which is not needed anymore you can use the following command : 
git branch -d -r origin/cloner

