Reputation: 86987
I'm starting out using Git + GitHub.
In our distributed team, each member is creating their own branch for each issue/requirement they are allocated.
git branch Issue#1 <-- create this branch
git checkout issue#1 <-- switch over to this branch
now code code
, commit
, code
, commit
, etc...
then pull request
, code-fixup
, commit
, code
, commit
.. etc.
and finally the pull request is accepted.
But, now what?
Does the person who created the branch on their local dev machine need to close off the branch? A suggestion was for the dev person to delete the branch ( ... -D ...)
and then do a pull / refresh of the master .. which then will get all their branch code.
Upvotes: 118
Views: 121716
Reputation: 18936
We request that the developer asking for the pull request state that they would like the branch deleted. Most of the time this is the case. There are times when a branch is needed (e.g. copying the changes to another release branch).
My fingers have memorized our process:
git checkout <feature-branch>
git pull
git checkout <release-branch>
git pull
git merge --no-ff <feature-branch>
git push
git tag -a branch-<feature-branch> -m "Merge <feature-branch> into <release-branch>"
git push --tags
git branch -d <feature-branch>
git push origin :<feature-branch>
A branch is for work. A tag marks a place in time. By tagging each branch merge we can resurrect a branch if that is needed. The branch tags have been used several times to review changes.
Upvotes: 194
Reputation: 8858
after complete the code first merge branch to master then delete that branch
git checkout master
git merge <branch-name>
git branch -d <branch-name>
Upvotes: 42
Reputation: 5416
Yes, just delete the branch by running git push origin :branchname
. To fix a new issue later, branch off from master again.
Upvotes: 41