Mysql 用Git管理Joomla网站?
我在一所大型大学工作,被指示使用源代码控制系统(git、svn等)来管理网站。我们使用Joomla,它严重依赖MySQL 目前,我们有一个几乎不起作用的系统,它使用一个开发服务器,每当我们更改一个网站时,它就会推送到一个实时服务器。这是一种痛苦,而且并不总是有效。此外,我们可以而且经常覆盖其他开发人员所做的更改 我们希望能够通过开发分支上的Joomla前端管理内容,然后将这些更改推送到测试分支,然后推送到主(实时)分支Mysql 用Git管理Joomla网站?,mysql,git,joomla,Mysql,Git,Joomla,我在一所大型大学工作,被指示使用源代码控制系统(git、svn等)来管理网站。我们使用Joomla,它严重依赖MySQL 目前,我们有一个几乎不起作用的系统,它使用一个开发服务器,每当我们更改一个网站时,它就会推送到一个实时服务器。这是一种痛苦,而且并不总是有效。此外,我们可以而且经常覆盖其他开发人员所做的更改 我们希望能够通过开发分支上的Joomla前端管理内容,然后将这些更改推送到测试分支,然后推送到主(实时)分支 我的问题是,从本质上讲,使用依赖数据库的Joomla这样的CMS管理网站的好
我的问题是,从本质上讲,使用依赖数据库的Joomla这样的CMS管理网站的好策略是什么?因为您还想同步数据库(内容存储在数据库中,而图像和媒体存储在文件系统中),您还需要commit/push脚本将数据库转储到文件中,并需要pull脚本加载数据库。这可以通过pre和post钩子来实现,也可以通过谷歌来实现 但是,Joomla的不同部分需要单独同步
让我们考虑三个服务器:
- 编辑服务器:管理内容的地方
- dev服务器:测试和配置扩展的地方
- 测试服务器
- 生产服务器
我已经用意大利语为svn写了一篇文章,但是你可以获取一些我们使用的bash脚本:或者由google翻译的你是在谈论你的内容还是你的代码?我更喜欢管理Joomla的内容。我只担心保持代码和数据库的同步。这个问题可能更适合,但不确定。但根据我的经验,数据库很难通过源代码控制进行版本转换。但是,您可以使用的一种策略是将用作
.SQL
文件的任何SQL脚本、查询等保存在Git中,并在需要更改数据库(如更改表等)时运行它们。但这些都是数据库结构更改。如果您想管理Joomla内容,然后,最好的办法可能就是频繁备份。如果生成的转储文件要保存在VCS中,我会使用--跳过注释
和--跳过转储日期
命令行选项重新编译转储MySQL表,这会增加生成的文件具有较少备份的可能性与上一次转储结果的差异。MySQL授权可以使用Percona工具套件(以前的Maatkit)中的mk show grants
工具转储,如下所示:mk show grants--noheader--notimestamp--drop--flush
。