2010-03-07 36 views
4

我们一直在使用Google Code SVN来存储学校项目。在我们尝试不同的想法时,我们创建了新的Visual Studio项目并将其存储在那里。现在我们想要将所有不同的想法合并成一个最终的项目。Google Code SVN使用建议

这里是仓库的当前布局:

- svn 
- branches 
    - Idea1 
    - Idea2 
- tags 
- trunk 
    - Sub-Project1 
     - files (...) 
    - Sub-Project2 
     - files (...) 
    - Sub-Project3 
     - files (...) 

我使用AnkhSVN的与Visual Studio一起,有一两件事我注意到的是,每次我签的项目之一,所有其他项目的检出太(当我通过Windows资源管理器查看时,我可以看到这一点)。

既然我们想制作最终版本,那么我想知道什么是我放置最终项目的正确方法。

编辑

我不认为我做的不错上述解释。所以我再次去。

是否将谷歌代码SVN存储库设置为单个项目?或者我可以将它们用于多个子项目吗?请问这是一个空的谷歌代码项目SVN文件结构的原因是已经:

- svn 
- branches 
- tags 
- trunk 

但我认为每个子项目都需要这三个组件。

可能是我之前并不清楚,我已经在上面的列表中重新命名了trunk的子部分(子工程)。每个子项目都有一个独特的目标。事情是我想现在把子项目合并成一个更大的项目。

+1

不会帮助您,但我认为您应该从一开始就使用功能分支!你读过红豆书吗? – 2010-03-07 01:30:48

+3

谷歌代码上SVN的最佳实践与其他地方几乎相同。重新标记。 – MatrixFrog 2010-03-07 01:59:36

回答

2

我会做的是重组的东西,像这样:

/svn 
    /Sub-Project1 
     /branches 
     /tags 
     /trunk 
    /Sub-Project2 
     /branches 
     /tags 
     /trunk 
    ... 

你可以做到这一切简单SVN移动。如果您当前的分支Idea1和Idea2属于当前的über-trunk,那么我可能会将这些分支移至顶级/oldtrunk/branches。或者只是删除它们,如果他们不活动!这是svn,他们仍然会在那里。 :)

接下来,你提到想要“合并子项目”,其中每个“有一个唯一的目标”。如果你想继续把它们作为完全封装的子项目来维护,我建议让它们单独构建并将它们合并为库,而不是合并源代码。在Java中,我会使用像Ivy这样的依赖关系管理工具来处理这个问题,但我不确定Google Code + Visual Studio的最佳解决方案是什么。您可以将Ivy用于非Java的东西,但它不那么直观。

1

请注意,您可以调整解决方案文件AnkhSVN执行结帐的位置数量。当您使用File -> Open Subversion Project时,它应该询问在什么级别检查项目,并且该属性尚未设置。您也可以使用File -> Subversion -> Change Source Control