【问题标题】:When is it safe to delete local branch?什么时候可以安全地删除本地分支?
【发布时间】:2015-10-02 18:58:07
【问题描述】:

情况是这样的:

我从其他远程开发分支创建了远程分支 -> 将其提取到本地 -> 进行了一些更改 -> git add -> git commit -> 推送到远程并发出拉取请求。

Pull 请求还在,分支尚未合并。

删除尚未合并的本地分支是否安全?

我不想拥有一堆我不再需要的本地分支机构。

【问题讨论】:

    标签: git branch git-branch remote-branch


    【解决方案1】:

    将本地分支推送到远程分支后,删除它在技术上是安全的,因为即使拉取请求尚未合并,您也可以随时从远程分支取回更改。

    但是,我会等到实际合并拉取请求。拥有拉取请求背后的整个想法,而不是允许任何人只合并他们想要的东西,是允许开发人员和项目维护人员之间的反馈循环。取决于项目的礼仪和维护者对您的信任程度,在合并您的拉取请求之前可能需要多次改进。我会避免每次都必须重新创建本地分支的麻烦,只需将其留在那里并继续处理,直到最终合并请求。

    【讨论】:

    • 谢谢,这对我很有帮助,正是我想要了解的内容
    【解决方案2】:

    将更改推送到自己的远程存储库后,删除本地分支是安全的。

    拉取请求与此无关,因为它只是向原始存储库的维护者提出的将您的更改合并回他们的代码库的请求。为此,他们需要访问您的远程存储库,但当然不需要访问您的本地文件。

    【讨论】:

      【解决方案3】:

      远程将拥有包含您工作的所有提交对象,因此您可以删除本地分支,但为什么要麻烦?

      分支的重量极轻(存储库中指向提交对象的指针只有 40 字节)。您的存储库和外部存储库将具有相同的提交对象,并且如果您需要在拉取请求被接受之前做进一步的工作,那么移动到本地分支比删除它并且必须拉下它更容易你自己的改变和工作。

      【讨论】:

      • 拉取请求是否还没有被接受并不重要,每次我开始处理某些功能或错误修复时,我都需要从远程开发创建新分支,所以在我推送我的分支后我没有本地不再需要它……这只是我的小强迫症的简单问题
      • 我对强迫症了如指掌:-)
      【解决方案4】:

      我有一种情况,我删除了一个分支,然后在任何情况下我都无法改回主分支。 Plastic 表现得好像它想要回那个未使用的分支,并且永远不会允许我再次对那个存储库做任何有用的事情。

      我对 Plastic 非常陌生 - 所以我可能应该联系支持人员 - 但我很着急。我的解决方案是从头开始一个新的存储库。这有点痛苦 - 但它再次起作用。现在我知道不要删除东西,因为可能存在我不理解的依赖项。

      因此,虽然我信任这里的专家,但我建议您确实知道可以删除分支而不会遇到我遇到的问题。

      我将在另一个线程中发布这个问题:何时删除未使用的分支不安全?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-03-14
        • 1970-01-01
        • 2012-09-11
        • 1970-01-01
        • 2020-01-07
        • 1970-01-01
        • 2011-07-16
        相关资源
        最近更新 更多