DVCS,数据库和用户生成的内容?

时间:2011-01-12 19:42:09

标签: version-control deployment

我想创建一个开发环境,我的中央存储库托管在像bitbucket / github这样的地方。然后在我的开发服务器和我的生产服务器上,我将有克隆。

我将研究新功能并在开发服务器上进行本地提交。一旦它处于可以推向生产的阶段,我将从开发克隆推送到中央存储库,然后从中央存储库拉到生产服务器。

这一切都有道理,但有两个部分我无法弄清楚。

如何保持数据库和用户生成的内容(文件上传等)同步?

此外,当我在生产服务器上进行下一次pull + update时,用户生成的内容是否会被删除?

其他人如何解决这个问题?

其他信息: 这将是一个MySQL / PHP网站。我也计划使用mvc框架(可能是蛋糕),我还没有坚定地决定使用哪种DVCS,但到目前为止Mercurial正是我的想法。不确定这些信息是否重要,只是为了以防万一。

1 个答案:

答案 0 :(得分:2)

这就是为什么DVCS并不总是发布管理的正确工具:一旦您的代码在服务器远程仓库上,您应该有另一个“rsync”机制:

  • 提取正确的标签(投入生产的标签)
  • 转换/复制正确的文件
  • 保留完整的其他文件/数据库集。