2

我曾在不同的团队工作过,在一个团队中,人们倾向于在合并旧分支后立即清理它们。在其他团队分支中永远停留。删除/保留旧分支有什么好处?这是否取决于我们使用的源代码控制系统?(在我的情况下 - SVN)。

4

2 回答 2

2

答案可能取决于您使用的版本控制系统。例如,如果您使用 Git,那么您不应该尝试删除任何分支,因为分支系统以及处理提交和推送历史的方式(取决于分支)与 SVN 完全不同。

但是,总的来说,我倾向于保留旧分支,而不是删除它们。在我工作过的专业场所,他们也倾向于保留分支机构。在我看来,保留一个分支不仅可以为您提供代码历史记录,还可以:

  • 失败尝试历史。你以后可能会考虑做一些以前失败的事情。如果您保留失败的分支,您将能够理解它首先失败的原因。
  • 这些分支中可能存在良好的可重用代码。有时,当主要稳定分支结束丢弃大量代码时,专门为此分支开发的好代码也可能最终被丢弃。但是,其中一些代码可能在开发后期的其他情况下证明是有用的。那么,为什么要重新发明轮子呢?
  • 衍生项目。在大型项目中,有时分支包含未进入最终产品的功能。从这些特性中,可能会有一些新的想法可以自己形成一个独立的项目。
  • 证明。让我们面对现实吧,在公司中,尤其是大公司中,在提交代码时需要考虑管理方面的问题。例如,在查看代码历史时,您可以立即看到谁提交了错误或好的代码,避免了误解。我知道这听起来很愤世嫉俗,但有时它会为人们省去很多麻烦。

一般来说,它的历史。为什么要删除那些提醒您开发到目前为止所遵循的路径的分支?我怀疑它会对磁盘空间产生重大影响(在大多数情况下,至少。在其他情况下,它可能会产生很大影响,但公司应该在空间问题真正成为问题之前处理好它)。就工作而言,分支机构代表了数千个工时。删除它们就好像你把这段时间扔掉了。

至于丢弃树枝,除了节省空间之外,我想不出任何理由。

于 2013-10-25T09:59:08.997 回答
1

很简单……如果你有它们,你可以随心所欲地回溯。就我而言,它也是SVN。我用不同的标签归档它们并将其移动到不同的文件夹。所以总是一个带有并行开发分支的热文件夹(Live),一旦合并完成,就去归档分支。

于 2013-10-25T09:31:39.770 回答