我使用Wordpress运行我的博客,最近所有人都成为SCM的信徒。我真的想把我的网站变成颠覆(这就是我现在正在使用的,也许git会在晚些时候出现)但是我想不出正确的做法。基本上,我的存储库目前设置有“实现”目录和“资源”目录,实现包含最终将发布到实际站点的内容。我希望能够在本地预览我的网站,而不必出于显而易见的原因上传到服务器。但是,要做到这一点,我发现我需要在本地安装Wordpress(而不仅仅是将远程站点复制到我的本地盒子)。这是在Wordpress.org上告诉我的。

这带来了能够在安装时使用SCM的问题,因为我需要不时地升级我的本地站点但这会产生与subversion的不一致,因为它无法跟踪正在进行的操作因为外部系统正在搞乱它的存储库结构。那只是赢了。

我最初的倾向是尝试SCM我的主题信息,因为这实际上是我所拥有的唯一的东西’而其他一切都只是我平台的一部分(与Apache或PHP没什么不同,真的)。然而,那是我理解失败的地方。我如何有选择地SCM只是该目录结构的一部分,以及如何维护我所在的Wordpress配置?

无论如何,我确定其他人已经解决了这个问题,并且该解决方案可能适用于许多与Wordpress类似的应用程序(Drupal,phpBB,phpMyAdmin等)。那么,你是怎么做到的?

有帮助吗?

解决方案

实际上并不难,但我会在这里将其分解为一些建议。你所描述的或多或少是“供应商掉落”。目录。这基本上是您在SVN中维护代码的地方,但在内容更新时将内容替换为内容。

您应该从一个空目录开始。设置SVN存储库,然后在空目录中执行SVN签出(它仍然是空的,除了它将添加一个隐藏的.svn目录)。接下来,在这里正常安装wordpress,然后将其文件添加到svn。你可以只是“svn add *”;但要小心,并删除任何不想要版本化的内容(uploads / temp / cache目录,如果适用)。如果您愿意,还可以使用svn:ignore属性告诉它忽略某些目录或文件类型。运行“svn stat”向你展示要检查的内容等,一旦一切顺利,提交它(svn commit)并从那里开始工作。现在你在SVN中有一个wordpress的基本安装。

当您工作并进行更改时,请提交它们。

到了升级的时候,只需将wordpress替换为你拥有的内容。确保在替换目录时,替换内容,而不是整个目录本身。你不想丢失每个文件夹中隐藏的.svn文件夹,因为这会使subversion失败。做一个svn stat和/或svn diff来弄清楚改变了什么,如果有的话,主要是新添加的内容。此时,您可以再次提交。

要在您的生产站点上部署,您可以执行svn导出,或定期签入Web目录。如果您结帐,请务必仅在准备好部署时进行更新。

其他提示

这是我正在测试的方法。设置需要一些时间,但您应该(理论上)进行面向未来的安装:

正确安装WordPress

另请参阅svn:externals以获取插件更新:

使用svn:externals安装WordPress插件

我认为升级部分甚至可以比这更容易;我使用2.5和2.6的最新版本,以及WP的前沿主干版本。

由于Wordpress提供了所有内容作为subversion存储库,因此获取稳定标记的当前版本就像创建博客目录一样简单

# svn co http://svn.automattic.com/wordpress/tags/2.6.2/ (replace the current rev here for the first check out).

升级可用时,只需导航到您的博客目录并运行

即可
#svn sw http://svn.automattic.com/wordpress/tags/2.6.3/ (or whatever wordpress rev you're updating to)

然后发布到您的生产站点只是一个导出,因为 gregmac提及 但是,我不认为这会回答您的实际问题,我将其解释为“如何在能够升级Wordpress的同时将我的自定义内容保存在SCM中”。关于哪些目录要明确的目标(你自己的个人博客的东西 - 主题,pplugins - 将在wp内容中,所以你只需要把它放到颠覆中)但我对subversion不够熟练告诉你如何将目录放入自己的存储库,同时仍然可以依赖Wordpress的repo进行升级。我的“SCM”对于我网站上的那些文件是wp-content目录的服务器外副本。

从这个角度来看,gregmac的答案对你来说效果更好。

  

我最初的倾向是尝试SCM我的主题信息,因为这实际上是我所拥有的唯一的东西’而其他一切都只是我平台的一部分(与Apache或PHP没什么不同,真的)。然而,那是我理解失败的地方。我如何有选择地SCM只是该目录结构的一部分,以及如何维护我所在的Wordpress配置?

这正是我版本控制我的博客的方式。我发现它很棒。一般来说,如果您正在编辑WordPress的文件,那么您做错了,并且在升级时会遇到痛苦。

为了简化这一点,我使用了TortoiseSVN。我在Windows资源管理器中导航到我的/ wp-content / themes /目录,右键单击我的自定义主题目录,然后从上下文菜单中选择 import 。导入所有现有文件后,我在该目录上执行了 checkout ,一切都已设置完毕。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top