有没有一种方便的方法可以在我的git提交中包含mysqldump?

有没有一种方便的方法可以在我的git提交中包含mysqldump?,mysql,git,github,mysqldump,version-control,Mysql,Git,Github,Mysqldump,Version Control,特别是如果我使用GitHub? 如果没有,我(或者其他人)应该使用这样的工具吗?我认为当前的最佳实践是将生产系统中的生产数据拉入开发人员数据库,并使用该数据库进行测试。在风险投资公司上分发数据存在着这样的风险,即这些数据与实际数据相差甚远 如果您的意思是只分发当前数据库模式:像RoR这样的框架具有增量更新数据库模式的迁移 无论如何,这只是将转储文件放入VCS并在每次获取新版本时导入它的问题,因此我并不认为需要工具来实现这一点。mysqldump的输出是一个简单的文本文件 每次更改数据库时,调用同

特别是如果我使用GitHub?
如果没有,我(或者其他人)应该使用这样的工具吗?

我认为当前的最佳实践是将生产系统中的生产数据拉入开发人员数据库,并使用该数据库进行测试。在风险投资公司上分发数据存在着这样的风险,即这些数据与实际数据相差甚远

如果您的意思是只分发当前数据库模式:像RoR这样的框架具有增量更新数据库模式的迁移


无论如何,这只是将转储文件放入VCS并在每次获取新版本时导入它的问题,因此我并不认为需要工具来实现这一点。

mysqldump的输出是一个简单的文本文件


每次更改数据库时,调用同一文件的mysqldump。然后在提交代码时将其提交到存储库。

添加一个脚本,将sql文件转储到特定于项目的某个位置(但在项目目录中)

mysqldump-uroot-pmy_db>my_project/my_db.sql

它是突出的文本,所以git会像其他任何文件一样将该文件作为已更改的文件拾取。那么就

git add my_db.sql
git commit -m "the schema changed"
git push my_project github master
你可以考虑以下内容:

  • 将转储文件放在github上或将其添加到repo中意味着任何人都可以看到任何数据,比如密码和用户名,显然,使用的是假数据
  • 您可能希望查看mysqldump选项,以便只转储模式而不转储数据

尽管有很多框架,但不幸的是它们没有强制执行数据库迁移(例如wordpress或joomla),因此在很多情况下,最好使用模式的版本副本,而不是数据,以便在另一台机器上快速复制数据库。是否有更新数据库模式的PHP框架?