如何对 Joomla 网站进行版本控制。
当我做一个手工制作的 web 应用程序时,我将代码和数据库模式放入 SVN 并添加一个脚本来更新工作副本、设置数据库并重置服务器。
有了 Joomla,我迷路了 :(
如何对 Joomla 网站进行版本控制。
当我做一个手工制作的 web 应用程序时,我将代码和数据库模式放入 SVN 并添加一个脚本来更新工作副本、设置数据库并重置服务器。
有了 Joomla,我迷路了 :(
您也可以对 joomla 使用相同的方法。
首先,在可以通过我们的网络服务器访问的地方安装 joomla
转储mysql数据库并将其放入安装joomla的根文件夹内的某个目录中。
创建一个脚本,将您的数据库转储导入 mysql。
将根文件夹从您安装它的位置移开,并将所有内容导入您的 scm。
检查 joomla 安装到它最初安装的确切位置。
运行您在步骤 3 中创建的脚本以导入数据库。
现在,如果您在网站上工作,编辑您的内容并提交,您可以在 joomla 文件夹中签出最新的更改。而且,如果您将分支混合为站点的“发布版本”,事情就会变得容易一些。此外,您可以制作一个结合了结帐和 mysql 转储导入的 shell 脚本。
有一个版本控制组件:http ://extensions.joomla.org/extensions/authoring/content-submission/6260/details这只会处理核心内容,但不会挂钩到 SVN。
这在很大程度上取决于您是否要进行版本控制:
我把这些按可能性和难度排序;即,我希望您不想对内容进行版本控制,部分原因是这更复杂。
您还需要考虑是否要对第三方组件进行版本控制。如果您不修改他们的代码 - 理想情况下,您不应该这样做 - 这样做没有什么好处。
因此,控制您自己的扩展的版本很简单——只需将适当的目录添加到 SVN 并为其他所有内容设置忽略文件。
配置部分存储在 configuration.php 中,但也存储在数据库中。您当然可以对文件进行版本控制,但最好使用常规转储处理数据库方面的事情,其中也将包括内容。
一般来说,使用版本控制系统作为备份机制很尴尬,所以我建议您通过文件系统的常规 rsync 以及自动数据库转储来处理备份。SVN 更适合您的日常开发并跟踪您所做的代码更改。
这听起来可行吗?