更新我的(非关键)网站的最佳方式?

不知何故,我找不到一个相当适合我的问题。

无论如何,我运行一个小博客。 当我第一次开始写博客的时候,几乎没有任何stream量,现在每天收到几百个视图,所以我需要一个新的stream程。 我有我的网站在一个mercurial存储库(在bitbucket上)。 我以前的更新方法是做类似的事情

cd /srv/mywebsite sudo svn update sudo xbuild <release configuration options> 

我觉得这样做并不是最好的方法。 此外,以前我使用的是SVN,而对于下次更新,我已经转换为Mercurial,所以这不太容易。

什么可能是更新我的简单网站的最好方法?

需要注意的是:

  • 我的网站目录包含各种非版本控制的文件,例如我作为博客内容的一部分添加的图像等
  • 我的网站在Arch Linux服务器上运行,使用mod_mono + Apache + MongoDB(尽pipe数据库更改非常less见)
  • 至less有一个版本文件在开发和生产之间有所不同。 这包含数据库连接string和其他内部configuration
  • 停机时间并不是一个大问题,但是我确实试图避免每次更新超过15分钟

当然有人在那里必须pipe理类似的设置。 什么是最简单的方法来做到这一点? (最好不需要从本地机器“部署”并手动合并configuration文件)

我一直在经营着一个汽车爱好者网站,现在已经有10多年的时间了。

对于大部分时间,我一直在通过rsync运行我的更新。 核心是Wordpress,但非WP内容存储在本地,并通过rsync从本地机器rsync'd到Web主机。

Rsync是相当不错的,因为它允许你从命令行中排除特定的文件,比如你的php.ini,mysql.cnf和类似的环境特定的configuration文件。

例如,我稍微模糊的用法:

 rsync -rlptP ~/lcl/* username@webhost:/home/username/www/ 

注意:我不使用“-a”开关,因为这包括站点之间不同的用户和组。