2011-03-18 84 views
2

我想通过将它们放入发布文件夹来将发布分支从功能分支中分离出来。我知道的最佳实践与SVN是有你的根文件夹结构是这样的:我应该为SVN中的发布分支创建一个文件夹吗?

\trunk 
\branches 
    \feature-a 
    \feature-b 
    \... 
\tags 
    \1.0 
    \... 

我SVN的理解是,主干/分支/标签的文件夹,没有任何特别的意义SVN。我是否会遇到任何问题,方法是在项目的根目录中添加发布文件夹,并将所有发布分支放入该文件夹中?

\trunk 
\branches 
    \feature-a 
    \feature-b 
    \... 
\releases 
    \release-a 
    \... 
\tags 
    \1.0 
    \... 

创建一个新的发布分支应该是这样的:

svn copy http://project/trunk http://project/releases/release-b 

回答

2

如何构造你的资料库是由你。如果你需要有分支类别/文件夹/等,那就这样吧。一旦你决定了你想要/需要的结构,你就可以创建一个流程来处理它。当然,底层的Subversion命令不会改变。

1

它会正常工作,虽然个人,我不喜欢它太多。 “发布”听起来像是一种标签(固定点),当你的意思是它是一种分支(向发布版本演化)。

+0

嗯,我可以看到一个发行版分支,您可以在其中分发发行版以进行错误修复开发或其他事情。这句话当然可能有点混乱。 ;) – 2011-03-18 04:00:11

+0

@杰瑞米 - 我认为你让我倒退了。是的,一个发布分支*应该像一个分支,在那里你可以修复bug和其他东西;当你做一个实际的版本时,你从分支做一个标签。我只是说,如果我在存储库中看到一个名为“releases”的目录,我期待它包含这些发行版*标记*,而不是发布*分支*。不过,也许这只是我。 – 2011-03-18 04:18:44

+0

我们一致认为,这个措词很混乱/模糊。 – 2011-03-18 04:35:07

1

你的工作流程将会是什么样子?此时,无论标签目录变得无关紧要,您还可以将“标签”重命名为“发布”,或者由于所有开发都在发行版或功能分支中进行,因此主干变得无关紧要。

我的建议是简单地将“tags”文件夹重命名为“releases”。

相关问题