// locally ((if you know what you are doing!) git branch -d localBranchName // and then if you need to... // on remote git push origin :remoteBranchName
Normally in a contribution flow
Branches are a great way to work on different features, fixes, etc. while isolating them from the main codebase. So a repo may have a
master branch, and separate branches to work on different features.
Typically once the work is completed on a feature and it is recommended to delete the branch.
Lets say you have a repo called as
AwesomeRepo, and its hosted on Github, at a location such as
Also lets assume it has the branches like:
For consistency we will assume branch names are same on
local as well as on the
Now, lets say you are done with that fix for authentication and want to remove the branch
git push --delete <remote> <branch>.
git branch --delete origin fix/authentication
If you get the error
error: unable to push to unqualified destination: remoteBranchName The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to 'git@repository_name'
Perhaps someone else has already deleted the branch. Try to synchronize your branch list using
git fetch -p
The git manual says -p, --prune After fetching, remove any remote-tracking branches which no longer exist on the remote.
First checkout to a branch other that the one you want to delete:
git checkout <branch>.
git checkout master
Git will not let you delete the branch you are currently on.
Then proceed with deleting:
git branch -D <branch>.
git branch -D fix/authentication