2011-08-19 64 views
0

我有我的网站的两个单独的组件:网站(MVC)和基于php cli的刮板。这两个组件共享通用模型文件,但部署在不同的服务器上。现在他们都使用相同的存储库。分离Subversion信息库和创建部署策略

我正在寻找外包刮刀的发展,但我希望保持网站的发展。所以,我认为最好的办法是为网站,刮板和共享文件设置单独的存储库。但是,我不知道该怎么做。

另外,我没有强大的部署策略。目前我只需在需要进行更改并存储备份时复制文件。

有关如何最好地管理此设置的任何建议?

回答

0

你可以看看属性svn:external

+0

好吧,如果我理解正确,我会将独立的代码源和共享源分隔到不同的存储库中。然后,我会添加svn:外部条目,以便将它们组合在我自己的机器上进行开发。这看起来是否正确? – TopDogg25

+0

对。所以你可以分配不同的访问权限。 (私人)网站回购包括通过'svn:external'的(外部,公共)刮板回购。如果更新,则也会考虑“subrepo”。 – glglgl

0

我不建议你分开存储库,因为它会使获取标签(即一致快照)的过程更难。很多时候,您需要保留整个系统的最后一个稳定版本,这在存储库分离时不会那么容易。 对于部署策略,我建议您为自己的代码制定自动构建策略。您可以使用Phing达到此目的。 Phing允许您构建更新部署所需的内容。配置你的svn服务器,在每次登记后使用Phing脚本构建整个项目。

然后,您的编译结果可以自动复制到测试服务器,以便在开发站点上进行更多测试。从QC获得OK后,您可以在真实服务器上部署二进制文件。