开发Web服务器上的基本subversion服务器问题

时间:2011-09-23 19:04:48

标签: linux apache svn

我刚刚设置了一个开发Web服务器,人们将在生产Web服务器上进行这些更改之前测试一些更改。目前,Web开发团队习惯使用subversion在生产服务器上进行更改。我也想在开发Web服务器上设置一个SVN服务器。

我的问题是:我如何制作它以便subversion将存储库存储在Apache文档根目录中,这样他们检查到存储库的文件将直接进入docroot并由Web服务器提供服务。

正如我现在设置的那样,似乎在提交文件时,它们会变成svn repo目录中的虚拟文件(仅在“svn ls file:/// repo / file”中显示,而不仅仅是“ls”)的/ var / WWW /文件”。

谢谢

2 个答案:

答案 0 :(得分:2)

这不是颠覆的方式。它通常不以可直接访问的格式存储文件。你想要做的是添加一个post-commit钩子,它将更新web目录中的签出副本。 Google搜索“subversion post-commit update”以获取更多信息。

答案 1 :(得分:0)

您可以使用subversion控制源代码,但真正的问题是您正在更改安装,然后将其归档而不是“正常”开发例程;这是为了进行更改,然后安装更改​​。

最好的方法是让subversion服务器远离生产Web服务器。您的开发框会检查对subversion服务器的更改。一个“特殊”构建用户检查所有的subversion东西并制作一个zip文件(或更合适的东西),然后将“zip文件”复制到生产服务器并“安装”。

这将使您在部署到Web服务器时具有更大的灵活性,并且它允许您在部署到生产服务器之前测试其他非关键Web服务器上的更改(如果您决定如此看中)。它还可以防止您在直接关闭Web服务器时出现错误(因为您可以选择不在构建到Web服务器的同时检查引入的错误的后续“修复”)。

无论哪种方式,您都可以使用crontab或其他类似cron的功能来执行“夜间”程序包等。关键不是创建一个人必须做的更多工作,而是创建更多自动化的工作程序可以简单地做到这一点,以便在最终被扰乱的情况下获得更多安全性。您的角色应该是决定是否要安装“this”软件包,并运行命令(或两个)来安装它。