// locally ((if you know what you are doing!) git branch -d localBranchName // and then if you need to... // on remote git push origin :remoteBranchName
When to Delete branches?
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.
The Delete workflow:
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
Deleting the branch REMOTELY:
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 '[email protected]_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.
Deleting the branch LOCALLY:
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