特别是如果我正在使用GitHub? 如果没有,我(或许是其他人)应该使用这样的工具吗?
答案 0 :(得分:2)
我认为目前的最佳做法是将生产数据从生产系统中提取到开发人员数据库并进行测试。通过VCS分发数据存在这些数据与实际数据有很大差异的风险。
如果您只想分发当前的数据库模式:RoR等框架具有逐步更新数据库模式的迁移。
无论如何,只需将转储文件放入VCS并在每次提取新版本时导入它,所以我真的不需要使用工具。
答案 1 :(得分:1)
添加一个脚本,该脚本将sql文件转储到特定于项目的某个位置(但在项目目录中)。
mysqldump -uroot -p my_db > my_project/my_db.sql
它是juts文本所以git会像其他任何一样选择该文件。那么只是
git add my_db.sql
git commit -m "the schema changed"
git push my_project github master
您可以考虑以下事项:
答案 2 :(得分:0)
mysqldump的输出是一个简单的文本文件。
每次更改数据库时,请将mysqldump调用到同一文件。然后在提交代码时将其提交到您的存储库。