即使对于小项目,你是否应该有分支,标签和中继文件夹?


7

我有SVN中的小型和大型项目的混合。其中一些非常小,我无法预见到自己会分支或标记。

所以,我应该还是与主干/分支/标签的文件夹约定坚持即使我相当肯定的分支/标签目录将不会被使用的小项目?我只是觉得这可能是矫枉过正。

有关这方面的想法?

  0

@KingNestor,编辑您的标题以反映您的问题。好问题,但! 22 2月. 092009-02-22 06:33:24

19

要回答直接在标题的问题:不,你不必。 SVN存储库可以按您选择的任何文件夹结构进行组织。这就是说,现在至少把所有内容都放在一个主干文件夹中是一个好主意,所以如果以后你改变了主意并决定分支或标记是有用的,你可以添加分支/标签文件夹很容易,而不必移动一切。

+1

当然,在SVN中,在事实发生后很容易移动目录。所以,如果你现在不把它们放进去,并决定你以后需要它们,那实在不是什么大问题。 14 5月. 092009-05-14 20:42:22


2

他们是约定,所以添加它们会有什么伤害。如果你的项目到了你需要它们的地步,那么从一开始就让它们到位比在事实之后尝试添加它们要容易得多。


6

我使用分支/标签/主干目录中颠覆甚至是琐碎的项目。这几乎是零成本,值得一致。我总是知道如果我需要结账,我的项目将如何布局。


0

在我的SVN仓库中,我有一个trunk/branch/tag目录。我把我所有的项目放在trunk中,并根据实际达到可标记状态的项目分别组织我的分支和标记目录。约定可能会建议为每个项目使用分支/标记/中继目录,但如果您不希望进行标记和分支,这可能不切实际。

即使是个人项目,可以从罕见的标签中受益,之前主要重写或漫长的沉寂分支。


0

通常(或相当明显),分支/标签是在团队中,很多程序员将在同一时间源的合作是非常有用的。每个编码器都在他们自己的分支中工作,因此不存在节省其他人工作的风险。

作为一个人,军队开发商,我仍然发现分支/标记有用:

  1. 我需要做一个实验分支,而不当前工作源放弃。如果实验代码证明更好,我会重新合并它。

  2. 如果我有几个单独的组件,它可能是标记每一个有名称,表示项目的版本号,并把它们在项目命名的文件夹标签有用。这有助于在您想要返回到版本1.0.5.10时保持制表符,并且需要知道组件Foo中发生了什么变化。承诺笔记可能不够丰富。


0

根据我的经验,'trunk/branch/tag'组织是一个非常好用的源代码管理布局。我已经看到它在使用不同工具(ClearCase,SVN,CVS等)的许多不同的组织中实现。我目前使用的ClearCase设置稍微复杂一些(令人费解?),但总的来说,它采用了非常类似的布局。

尽管在SVN中不是必需的,但我强烈推荐习惯这种类型的布局,包括合并到不同分支和主干。

对于个人项目,我发现标记是保存最终的不可变版本的有价值手段。分支通常是为实验切线保留的,所以我不会在现实开始之前破坏我的代码的最新(稳定)版本。