2013-04-27 22 views
3

我近来在本地主机版本的joomla 2.5网站上进行了一些更改。 这些更改包括创建新文件或编辑以前的文件,在数据库中添加表并更改其他表。如何同步本地主机版本更改与生产版本

但所有这些日子里,我的一个朋友正在创建在线文章,导致数据库和文件系统的变化。现在我处于思考的位置,如何使在线数据库+文件与它们的本地主机版本同步。有没有工具?或者我需要关注在数据库中完成的更改以及joomla应用程序的文件结构并手动同步它们?这个问题的常见做法是什么?

谢谢

+1

http://stackoverflow.com/questions/5191169/database-migrations-in-joomla – Nitrodist 2013-04-29 09:40:25

回答

2

这里有两个问题:数据库和文件同步。

你应该做的第一件事就是建立一个代码版本管理系统,不管它是svn还是git都不重要,只要你保证你的数据安全。以防万一,将这两个dbs转储到svn。

如果您没有触摸数据库,那么您可以更新文件。请注意,扩展安装也会更改数据库。

如果您对数据库创建了较小的更改,最好手动重新创建它们。

如果您已经创建了重大更改,最好将活动站点中的内容,资产,类别表插入您的开发站点数据库,添加与文章一起添加的任何图像。您可以选择输出数据库转储排除指定的表,即

mysqldump -u username -p database --ignore-table=database.jos_session 
    --ignore-table=database.jos_content --ignore-table=database.jos_menu 
    > database_config.sql 

!这仅仅是语法,你需要自己来确定表名!

你可以用phpmyadmin或类似的东西来实现。

现在编码。如果在生产站点上未创建任何文件(图像除外),则可以安全地将开发文件移至服务器。

否则将您的开发站点置于代码版本控制,提交或推送,然后将生产文件复制到它们上面,并使用svn/git功能来检查代码差异并在一切正常后发布到活动服务器。

如果你可以看到意大利我已经发表了总结了一个更好的格式提出了一些对这些概念的文章:http://www.fasterjoomla.com/it/soluzioni-joomla/svn-per-joomla

+0

我应该忽略#__content?那些评论?文章存储在哪里? – themis 2013-04-29 06:16:39

+0

#__content是您告诉Joomla它应该将数据库前缀插入到表中的方式,并且仅在查询中使用,因此它将被转换为类似jos_content的东西(注意,#之后的双下划线,db之后的单下划线字首)。文章存储在#__content +中,每个文档都有一个在#__asset +中分配的资产,文件系统中可能有新的类别和最有可能的图像 – 2013-04-29 11:40:20