I struggled with the following problem for some time, so maybe this will help people with the same issue.
We use git for version control and Tortoisegit as gui on top of git. Each developer has many local branches. If something needs to be shared, we push the branch to the remote repository, making it a remote branch.
If somebody deletes a remote branch, it shows up in Tortoisegit for all other developers so everybody ends up with many remote repositories which actually do not exist anymore. Furthermore, trying to delete this entry results in an error message because the branch does not exist on remote (yeah, I know, this is why I want to remove it from my lists, silly!).
To get rid of these, do a fetch on the remote repository and check "prune". Tortoisegit will recieve the information which branches do not exist anymore and delete them from all lists. Your remote branch list is clean and up-to-date again :-)