我做网站开发(主要是 Drupal 基础站点)并且有一个工作流程:
- 许多开发人员在他们的本地机器上工作
- 开发人员使用 git 将他们的更改 merge 到开发机器
- 当开发站点达到稳定点时,我们将推送到暂存服务器以供客户审查
- 最后我们发布到生产服务器
并且 git 可以很好地来回移动文件。我的问题是如何将其 merge 并使用 git 将数据库与文件一起迁移?
一旦我能够将开发数据库提升到阶梯上,我该如何将开发数据库与事件生产数据库 merge ?
最佳答案
最直接的开始是将数据库转储到一个文件中,并将其存储在 git 和源代码中。但是一定不要把这个文件泄露到生产的webroot中,这样一些schema.sql
就不容易通过HTTP访问了。将源代码存储在 /webroot
并将 db 存储在存储库的 /db
子目录中很方便,使 /webroot
成为 Web 服务器的实际根目录。
然后您会看到一些更新和 merge ,甚至围绕此文件的冲突——这些应该像往常一样解决您的代码文件。
在模式代码和可执行代码的所有 merge 和冲突解决之后,您应该端到端地彻底测试您的应用程序。
关于database - 如何用git迁移数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11569180/