我预计会对Subversion存储库进行一场争夺战:目前我们有一个单独的Web应用程序作为3个主要项目和2个报告项目(当我6个月前开始时)检查,现在最多7个项目,并且预计进一步发展。
对我来说很明显,不正确,如果您想合理使用版本控制系统,编译后的可执行文件无法跨越版本控制边界。对于单个功能,单个签入是不可能的,这对我来说似乎很重要。
但是当我试图解释这个时,我觉得我在挥手。有没有人有任何参考资料,对于Subversion或者一般来说,它提出了这个原则并且背后有一些权威?我已经做了一些搜索,我只想不出我需要的东西。
答案 0 :(得分:0)
Subversion中有很多选项如何构建您的存储库。请参阅文档中的discussion of repository layout。
我通常会遵循以下规则:
不同之处如下:
单个项目布局:
Repo MyProject:
trunk/
java/
src/
ruby/
doc/
...
tags/
rel1.0/
java (references the copy of java of revision xxx)
ruby (references the copy of ruby of revision xxx)
...
rel1.1/
...
branches/
feature_x/
java (references the copy of java of revision yyy)
...
多项目布局:
Repo MyProjectBundle:
proj1/
trunk/
java/
src/
tags/
rel1.0/
java (references the copy of java of revision xxx)
...
rel1.1/
...
branches/
feature_x/
...
proj2/
trunk/
tags/
branches/
...
所以主要区别如下:
作为参考,我只有引用的SVN红皮书,当然还有stackoverflow中的众多答案之一:Subversion Repository Layout
答案 1 :(得分:-1)
由于svn中的模块仅按惯例存在,因此您可以在存储库中拥有顶级目录并将各种项目放在其中,并且可以在所需的树中的任何位置提交,包括顶部。所以我不希望你有一个单一的签到。
您的构建系统将是将应用程序划分为各种可交付成果的部分。
Cripes,我希望我已经至少部分地回答了你的问题。