如何把程序代码和数据库一起加入版本控制?

gqqnb 2014-03-10 12:15:23
写一个带有数据库的程序很常见吧,我想要把这个项目归入版本控制系统。比如git好了。然后这个项目我要公开,所以发布到github上了。

但是程序所需要的数据库没在github里啊!协作者从仓库里更新了代码,一运行,诶,数据库没有!

假设我用mysql数据库。请问有什么好方法把数据库和程序代码一起发布到github,协作者从仓库一更新,就可以运行?

我曾经用visual studio写过asp.net。那时sql server数据库是以一个文件的形式,存放在项目目录里。我对这个项目启用版本控制,这个数据库文件也被列入控制范围。我把项目提交到google代码,数据库也传上去了。

但是mysql支不支持任意位置的数据库文件呢?
...全文
231 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
gqqnbig 2014-04-28
  • 打赏
  • 举报
回复
像楼主的情况,数据库不能移动,不能直接纳入版本控制系统。这种情况下,可以使用钩子。git和svn都有钩子。 svn有 # start-commit 提交前触发事务 # pre-commit 提交完成前触发事务 # post-commit 提交完成时触发事务 你可以在pre-commit钩子中写脚本,比如把数据库一并提交,或数据库保存为sql文件然后提交。 svn没有更新前/后钩子。你可能需要自己另创一个脚本,先执行svn更新(从服务器更新最新的文件到本地),然后把本机数据库删除,替换为下载下来的数据库。 git的钩子多一点,有提交前钩子,也有更新后钩子。http://wendal.net/418.html
only_qin_wo 2014-03-10
  • 打赏
  • 举报
回复
导出sql语句 放置项目中

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧