【问题标题】:Should we remove a remote Git branch after merging to master?合并到 master 后我们应该删除远程 Git 分支吗?
【发布时间】:2019-09-01 02:25:33
【问题描述】:

我想知道在合并到 master 之后删除你的分支是否更好,或者我们是否应该在整个项目期间继续在同一个单独的分支上工作。

即如果我们是小组中的 3 名成员,我们每个人都会创建自己的分支并在项目期间进行工作。在开始处理其他事情之前,我们都在 master 分支中提交并拉取。这样,我们就知道谁在哪个分支上工作,我们就不会感到困惑。

谢谢。

【问题讨论】:

    标签: git github version-control git-branch branching-and-merging


    【解决方案1】:

    因此,有大量关于如何管理分支的文献,但实际上我认为这归结为您希望如何在自己的项目中管理事物。话虽如此,这里有一个来自 Atlassian 的分支工作流链接,可以给出不错的意见:

    https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow

    现在,说了这么长的文章,如果你们都直接向大师承诺是有意义的,我认为这没有什么问题。我个人致力于掌握我从事的几个小项目,但总的来说,这是我遵循的流程:

    1. 为项目创建主分支
    2. 决定您要开发的功能,我们将其命名为Widget X
    3. 为此创建一个功能分支,命名为feature-widget-x
    4. 所有从事此功能的开发人员都应根据他们正在从事的工作创建自己的分支。例如,如果我正在处理错误,我会从 feature-widget-x 分支出来并创建一个名为 michael-error-handling 的分支。
    5. 将所有内容合并到功能分支中,并根据需要从那里分支以完成功能。
    6. 功能完成后,将功能分支合并回主分支。
    7. 标记并存档功能分支,以便您可以在需要时随时回滚。
    8. 清理本地开发者分支。
    9. 从 master 为 Widget Y 创建一个新功能分支。
    10. 重新开始整个过程​​。

    我想指出,这严格来说是我做事的方式,并且在实施它的公司中对我来说是成功的。不过,对于您的三人小组来说,这可能是也可能不是最佳解决方案,但这由您决定。如果你确实采用了这个计划,它的好处是能够根据需要回滚到一个特性,并且唯一持续存在的分支是特性分支和主分支。比查看单个分支上的提交日志来确定在提交中断时应​​该回滚到什么时候要容易得多。

    希望这会有所帮助。以下是更多链接供您阅读:

    https://git-scm.com/docs/git-archive

    https://git-scm.com/book/en/v2/Git-Basics-Tagging

    How can I archive git branches?

    【讨论】:

      【解决方案2】:

      您问题的正确答案是:这取决于您想做什么。继续在与 master 合并的分支上工作没有问题。如果你不需要它,你也可以简单地删除它! 但是,在您描述的设置中,我完全同意 如果 您在项目的不同部分工作,那么创建不同的分支并保持主分支干净和更新可能是安全的尽可能为小组。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-25
        • 2015-03-09
        • 2013-12-13
        • 2013-01-14
        • 2016-03-20
        • 1970-01-01
        • 2020-11-13
        • 2012-07-25
        相关资源
        最近更新 更多