Should I delete a branch after merging it?

后端 未结 4 1897
失恋的感觉
失恋的感觉 2020-12-24 11:13

After merging a branch, do you delete it from the repository?
However, it\'s a good practice or not?

I usually create a lot of branches, since I don\'t want to

相关标签:
4条回答
  • 2020-12-24 11:47

    I definitely clean up my branches after they've been merged in.

    We use GitLab and merge requests at work, so the historical information about branches is stored there; I don't need them cluttering my branch list, and when I look at a coworker's fork, ideally I'd like only to see the branches of their current active development. If I'm trying to look at some code on their branch, I want to be able to look through just a few currently active branches, and not every feature or fix they've ever started work on.

    The above applies to BitBucket and GitHub, too.

    The only reason you might have for not deleting a branch post-merge is so you know where a given feature ended, but merge commits (and git merge --no-ff if you really want) make that irrelevant.

    0 讨论(0)
  • 2020-12-24 11:50

    There's no problem in deleting branches that have been merged in. All the commits are still available in the history, and even in the GitHub interface, they will still show up (see, e.g., this PR which refers to a fork that I've deleted after the PR got accepted).

    0 讨论(0)
  • 2020-12-24 11:58

    Just take care of
    All hyperlinks URLs references of your DELETED branches, will be BROKEN.

    For example
    If you delete branch_feature_x branch from your repo
    The corresponding hyperlink URL of this branch will be broken
    https://github.com/username/project/tree/branch_feature_x

    0 讨论(0)
  • 2020-12-24 12:08

    Just to clarify, branch, from git point of view, is just link onto some commit. By deleting branch, you will not delete commits from git repo. Of course, detached commits will be cleaned after some time via git garbage collector.

    FYI: We're usually merging branches into master via bitbucket interface. There you can set delete feature branch after merge flag.

    If you need to deal with too old branches, you could have a look for some utilities, for example this one .

    0 讨论(0)
提交回复
热议问题