![MediaWiki 与 Mercurial (Hg) 集成](https://linux22.com/image/1227920/MediaWiki%20%E4%B8%8E%20Mercurial%20(Hg)%20%E9%9B%86%E6%88%90.png)
语境:
我们对可用性的要求很宽松。如果我们的虚拟专用服务器离线,我需要能够在几天内更换它。
这没有问题,因为数据和日志都是一次性的。Python 代码安全地保存在 Mercurial 中,并在多个位置进行了有效备份。我们已尽职尽责地记录了将服务器重建为相同配置所需的所有步骤,这些步骤存储在 MediaWiki 上……哦天哪……虚拟专用服务器上。
我需要一种方法来备份 MediaWiki 中的说明,以便在服务器关闭时我可以阅读它们。
提议:
如果能将对 MediaWiki 的所有更改自动提交到我们的 Mercurial 源代码存储库,那就太好了,这样它也将自动复制到所有开发人员的机器上。我们可能随后可以启动本地版本的 MediaWiki 来读取内容。(写入可能会引起冲突,但没有写入我们也可以接受。)
我之前一直没能找到这样的解决方案。是我的 Google Fu 失败了,还是有充分的理由说明这种方法不好?
答案1
人们已经使用 mercurial 和其他 DVCS 作为 wiki 的后端(参见维基百科举例来说,它们可以让你轻松地在多个页面上编辑多个文件(例如,将它们组合在一起),但通常它们不太合适,因为每次编辑任何页面/文件时,你都会在所有页面/文件中创建一个新的变更集。
但是,听起来您只是想使用 mercurial 作为 mediawiki 实例的备份,这有点不匹配。wiki 已经保存了以前的修订,导出到 DVCS 会以不同的方式执行相同的操作。您最好每天使用它提供的导出/存档功能备份您的 wiki,并将其推送到廉价存储。
答案2
我不了解 mercurial,但这里有一个增量 Git 导出:
https://github.com/moy/Git-Mediawiki
(导入到 Git 然后转换为 Mercurial 是一种选择,但有点小题大做……)