我有一个具有标准布局的颠覆存储库,即主干/和分支/(和标签/)。当进行更大的更改时,会使用功能分支,定期与主干同步,然后重新集成回主干(现在使用 1.5)。相当标准的东西。

我想知道的是,这样的功能分支一旦完成并合并,是否应该保留或删除。颠覆书有时似乎建议删除它们是很常见的,但我也看到了一堆确实保留分支的开源项目。

我还有些担心删除分支将使得跟踪存在哪些分支变得更加困难,特别是当可能重复的名称进入场景时(假设我们搜索重构两次),它们的提交历史记录会在存储库深处的某个地方消失ETC。

另一方面,分支被大量使用,尤其是现在的 1.5,而且我确实喜欢这样的想法:不必翻阅一大堆不活动的分支来找到我当前正在处理的分支。

我所缺少的优点和缺点是什么?人们在做什么?

有帮助吗?

解决方案

如果您真的担心删除它们,以免忘记它们,那么只需在名为“inactive”的分支下创建一个文件夹,然后 svn move 将旧的、不活动的分支放入该文件夹中。这对您来说可能是两全其美。

其他提示

您可以安全地删除它们。删除它们不会将它们从存储库中删除,分配的空间永远不会被回收,但它确实会使整个项目树看起来更加清理。

我一直在删除功能分支,因为我喜欢缺乏混乱。其他一些开发人员一直存在轻微的混淆,但由于我们在错误跟踪系统中记录了提交的修订数量,因此它非常顺利。如果有人说他们找不到分支,建议在他们的log / diff / checkout上使用 -rerevision 标志/通常只需要这些。

我的团队会删除它们以防止混乱。毕竟不像是消失了;如果需要,可以检索它们。你是对的,很难再找到它们:你需要知道分支存在的修订号,这样你就可以告诉你的客户查看那个版本以查看你的文件。

我们使用FogBugz进行项目管理,通过修订号跟踪事件何时提交到我们的SVN存储库。我们可以使用它来确定我们需要修改的版本以便查看我们的文件:我们在FogBugz中找到功能历史记录,查看分支存在的修订版本,并使用该信息向后跳转。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top