git子模块是存储大型数据库转储的好方法吗?

时间:2013-10-17 20:41:07

标签: database git development-environment git-submodules

即,我们有一个20MB的bzip2开发数据sql文件,我们希望将它们与我们的开发代码一起进行版本化。

但是,我们不希望默认情况下每次刷新/获取时都会从repo中删除此文件。

一个解决方案似乎是将这个大文件存储在一个单独的仓库中,然后用子模块链接到它。然后,开发人员只有在需要检索和重置其开发数据库时才会获取db文件。然后,当存在模式更改时,将更新数据库文件,将其提交到外部存储库,并更新子模块。

这是一个很好的开发工作流程吗?或者有更好的方法吗?

编辑:未压缩的SQL转储是360MB。

编辑:Github说“不”,不要这样做:

  

数据库转储

     

大型SQL文件与版本控制系统不兼容,例如   Git的。如果您希望为您的开发人员提供最多   最近的生产数据集,我们建议使用Dropbox进行共享   您的开发人员之类的文件。

1 个答案:

答案 0 :(得分:1)

我最终制作了一个简单的Web服务器,从存储转储的存储库中提供架构转储目录。回购增长非常快,因为转储量很大,并且只是在人们不得不调出新节点时克隆它们,这使得人们放慢速度。