【问题标题】:When to delete a branch from Git?何时从 Git 中删除分支?
【发布时间】:2011-02-18 06:56:37
【问题描述】:

我对 Git 比较陌生,希望获得有关删除分支的最佳实践的建议。

在我创建分支并将其合并回 master 后,我应该将其保留以用于历史目的,还是应该在不再需要它时立即将其删除?

【问题讨论】:

标签: git


【解决方案1】:

通常,您会在合并后删除一个分支。

例如,在以下合并之后,您将删除分支iss53,因为您不再需要从该分支进行开发。您可以稍后使用git checkout -b <name> <sha1> 提交的 sha1 值随时重新创建它。

(仅当分支指向作为树的“提示”的提交时才需要。事实上,在这种情况下,git 不会让你删除它,除非你强制它。)

(上图来自优秀progit book

【讨论】:

    【解决方案2】:

    将主题分支(如“fix-iss05”)合并回主分支或开发分支后立即删除。根据您的工作流程,您可能希望在“开发”分支上完成所有工作和合并,并且仅在经过测试并准备好发布后才将更改合并到 master。

    如需深入了解 git 工作流程,请查看:http://geewax.org/2009/11/21/agile-git-workflow.html

    【讨论】:

      【解决方案3】:

      在我看来,确实没有必要保留它。除非您 --squash 合并,否则您将在 master 中拥有该分支的历史记录。我会继续删除你不再需要的。

      【讨论】:

      • 你是说,如果我们压缩提交,然后删除旧分支,我们将无法使用 SHA1 重新创建它? git checkout -b
      【解决方案4】:

      从轨道上对其进行核弹。你只需要真正关心什么时候你的 delete 会删除不在你的 head 分支历史中的东西......即使这样,如果我开始测试某些东西并认为它毫无价值,我也会经常这样做。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-03
        • 1970-01-01
        • 1970-01-01
        • 2013-07-02
        • 2011-07-16
        • 1970-01-01
        相关资源
        最近更新 更多