使用Subversion时最好的部署策略是什么?

时间:2009-12-16 19:07:12

标签: svn deployment

我的本​​地开发盒上有SVN设置,我的实时服务器只有出站svn。将更改仅上传或提交到实时服务器的最佳方法是什么。我现在必须上传整个代码库。我不喜欢按照这样的方式。请建议我提交更新或上传到实时服务器的好方法。

谢谢。

4 个答案:

答案 0 :(得分:1)

如果您无法触摸生产服务器上的Subversion服务器实例,则有几个选项:

  • 将代码发布到其他位置,然后使用生产服务器上的Subversion客户端从发布的位置下载代码的副本。 (确保使用svn export,而不是svn checkout,这样就不会分散.svn个目录,或者以某种方式保护.svn目录。)

  • 在本地开发环境中使用post-commit挂钩将代码推送到服务器(例如,通过FTP)。每次你提交,你都会触发生产。您可能想要更细粒度的东西 - 例如,通常的做法是在提交包含“release”一词的标签时触发此推送。

答案 1 :(得分:0)

如果您不打算使用

svn export

确保您的.svn目录不可通过Web访问。否则,可能会通过SVN文件获取源代码。


<IfModule mod_rewrite.c>
  RewriteRule ^(.*/)?\.svn/ - [F,L]
  ErrorDocument 403 "Access Forbidden"
</IfModule>

答案 2 :(得分:0)

我没有获得“出站”SVN,但使用Apache的HTTP上的SVN对我的配置工作正常。大多数教程都会让你在几分钟内开始。

如果您熟悉SVN,其余的都很“简单”。

答案 3 :(得分:0)

您可以使用post-commit hook来触发svn export