Search code examples
gitgit-branchgit-taggit-archive

how to close a branch in git


When I know I won't use a branch any more is it possible to close or lock it? Actually I would like to close a branch but I don't think it is possible to close a branch with GIT. what about the delete. What happens to my history when I delete a branch?


Solution

  • Updated Answer

    As @user3159253 stated in comments of this answer :

    git garbage-collects commits which aren't referenced, directly or indirectly, by a named reference (branch, tag, etc). That is why it is important to leave a reference to a freezed branch.


    You can tag the tip of the branch by archiving it, and then delete the branch.

    git tag archive/<branchname> <branchname>
    git branch -d <branchname>
    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/<branchname>
    git checkout -b new_branch_name
    

    Or more simply :

    git checkout -b new_branch_name archive/<branchname>