I\'d like to make a commit and close its branch, without removing it from history.
With mercurial I\'d commit --close-branch
, then up
There's no exact equivalent to closing a branch in Git, because Git branches are more lightweight than in Mercurial. Their Mercurial equivalent is more bookmarks than branches.
If I understand correctly, closing a branch in Mercurial roughly makes it disappear from the branch list, so you can achieve the same thing by archiving it. A usual practice is to tag its tip as archive, and delete it:
git tag archive/
git branch -d
git checkout master
The branch will be deleted, and can be retrieved later by checking out the tag, and recreating the branch:
git checkout archive/
git checkout -b new_branch_name