将SVN标记部署到生产环境的最佳方法是什么? SVN交换机还是SVN Checkout? 使用SVN开关将添加可能占用大量存储空间的.svn文件,但使用起来既方便又容易。
使用SVN Checkout将删除.svn文件,并将其符号链接到新的结帐文件夹。
SVN交换机和SVN结账部署到生产的优缺点是什么?哪个更容易实用?对我来说,“SVN Checkout”方式。
感谢。
选项1:使用SVN SWITCH - 通过SSH连接到生产服务器然后执行SVN SWITCH:
$ cd /var/www/html/sites/mydomain.com/
$ svn switch https://svn.svndomain.com/repos/mydomain.com/site/tags/4.11.0-qa1
// Reload Apache
$ /etc/init.d/httpd reload
或
选项2:使用SVN导出 - 通过SSH连接到生产服务器然后将SVN导出到带有版本和符号链接的新文件夹,如下所示:
// Export Site
$ svn export https://svn.svndomain.com/repos/mydomain.com/site/tags/4.11.0 /var/www/html/sites/mydomain.com_4.11.0
$ cd /var/www/html/sites/;
$ unlink mydomain.com;
$ ln -s mydomain.com_4.11.0 mydomain.com;
// Reload Apache
$ /etc/init.d/httpd reload
答案 0 :(得分:1)
将svn checkout用于新的空目录,以确保您没有任何未提交的文件。然后使用svn export到新的空目录(或手动删除所有.svn目录)。然后使用新文件替换Web服务目录的旧内容,或使用符号链接。 .svn目录不应该从外部访问。
我的网络应用程序在部署之前通常需要一些构建过程。此构建过程将替换svn导出阶段。