跳转到主要内容
东方龙马 提交于 28 May 2014

原文链接:Does our site really need release control and a test site?

译者:风筝

 

当我们接手drupal网站的维护,我建议执行版本控制和创建一个分段(测试)网站。当新客户听到这个,他们自然会问为什么要这样做。坦率的讲,他们从未听说过任何关于这个技术术语。

这封邮件我已经写了很多次,我想现在把它发布在这,然后把这个url发送给大家就可以了。


Git 是一个源代码控制包。它允许你跟踪你代码的所有修改,允许直接恢复到先前的任何版本。当主存储库保存在一个商业存储库(像bitbucketgithub),存储库也是一个有效的代码备份。Drupal数据库不包括在存储库中。

在我们的开发过程中,我们通常有三个不同的站点。首先是产品网站--全世界都能看到。然后我们还有一个分段网站,通常命名为staging.yoursite.com 或者test.yoursite.com.我们给网站设置用户名和密码,使搜索引擎检索不到它。最后,开发者在本地的机器上有一个本地的、开发版本的网站。

  1. 当开发者开始一个网站,他从git存储库拿到代码,从产品网站复制数据库。在开发过程中,他完全有可能搞砸这个网站并且显示出烦人的错误,但只有他自己能看到。如果他在你的产品站点上工作,你的客户可能会看到这些错误。
  1. 当他得到期望的效果,他会上传代码到git存储库,然后他把修改从存储库部署到分段站点,并且修改相关的数据库。
  1. 客户去分段存储库测试这些修改。
  1. 如果修改通过了,开发者再代码部署到产品站点,并修改相应的数据库。

不通过这个流程:

  • 很难恢复修改
  • 很容易把错误呈现给用户
  • 你还应该做一次完整备份,但git存储库可以作为代码备份。
  • 在生产服务器上运行的必须是完全测试过的代码,你需要在 staging 服务器上先测试所有的修改。

我希望这篇文章可以帮助其他人快速的使普通业务经理明白为什么版本控制和分段/产品网站是必要的。

Drupal 版本