Can't delete branch even though it shows up in git branch
 git branch -r --merged | grep 123 
OUTPUT
origin/feature/123-some-feature
 git branch -r --merged | grep 123 | xargs git branch -d 
OUTPUT error: branch 'origin/feature/123-some-feature' not found.
Why can't I delete this remote branch?
EDIT: Sorry, should have been more clear on my initial post (I was in a meeting when I wrote this). I don't have any of these branches locally and I'm trying to do a cleanup of the remote repository to delete all merged branches (I'm testing it by filtering to just '123' for now).
I want to get a filtered (via grep) list of the remote branches that have been merged so I can review them locally to be sure I'm not going to delete any branches I want to keep.
 Then I want to execute it again with | xargs git branch -d  | xargs git branch -d to actually remove those branches from the remote repository.  
I think this would be what I want based on the posted answer and one of the comments?
 git branch -r --merged | grep 123 | xargs git push origin --delete 
You can't delete it because it's a remote branch. It exists in the remote repository, not in your local repository. If you want to delete it on the remote, you can:
git push --delete origin feature/123-some-feature
But understand that this will affect the availability of the branch on the remote repository.
 You shouldn't use git branch -r to delete remote branch.  
 Use git push origin :your/branch/name (be sure you entered colon : before branchname)  
上一篇: Git远程覆盖导致两个断开连接的历史记录
下一篇: 即使它出现在git分支中,也不能删除分支
