如何将 wiki 从 FogBugz 6 导出到(几乎)任何其他 wiki(最终目的地:合流)?
-
08-07-2019 - |
题
我们安装了 FogBugz 6,其中包含大量 wiki 内容。我们正在过渡到使用 Atlassian 产品(JIRA 和 Confluence),因此我们希望将 wiki 内容纳入 Confluence 中。你会如何处理这个问题?
不幸的是,FogBugz 似乎不提供任何类型的 wiki 导出功能,并且 Confluence 也不提供任何 FogBugz wiki 导入。
FogBugz 确实有一个 应用程序编程接口, ,但它对细节有一点了解。访问维基内容。我们并不真正关心页面过去的修订(只关心内容、链接和图像/附件),因此不清楚 API 是否能让我们比使用 wget 或其他东西抓取 FB wiki,并使用 HTML 和来自那里的图像/附件。
Confluence 的功能相当齐全 内容导入实用程序 支持许多来源 wiki:
- 维基百科
- 维基百科
- 多库维基
- 媒体维基
- 摩因摩因
- 乔特斯
- 提基维基
- 维基百科
- 共享点
- 维基百科
- 维基百科
- 维基百科
- 特拉克
那里没有 FogBugz 选项,但如果我们可以将 FogBugz wiki 内容导出到上述 wiki 之一,那么我们就可以从那里使用 Confluence 多 wiki 导入器。
或者,我们可以使用 wget 抓取 FogBugz wiki 内容,然后找到一种方法将静态 HTML + 图像 + 附件放入 Confluence 或上述其他 wiki 之一中,作为 Confluence 的垫脚石。
想法?
解决方案
一位同事最终解决了这个问题,并且该过程最终普遍适用于我们也想引入 Confluence 的其他 Web 内容。概括地说,该过程涉及:
- 使用 wget 从 FogBugz 中提取所有内容(进行配置,以便正确下载图像和附件,并且正确地关联到它们和其他页面的链接)。
- 使用简单的 XSLT 转换来去除“模板”内容(例如每个页面主体周围的徽标、控制/导航链接等。
- (可选)使用 Perl模块 将生成的 HTML 片段转换为 Confluence 的标记格式
- 使用 Confluence 命令行界面 推送所有页面、图像和附件数据。
请注意,我在上面#3 中说的是“可选”。这是因为 Confluence CLI 有两个相关选项:它可以用于直接创建新页面,在这种情况下,它已经需要 Confluence 标记,或者它可以用于使用 HTML 创建新页面,并将其转换为 Confluence 标记本身。在某些情况下,Confluence CLI 可以很好地转换 HTML;对于其他数据源,我们需要使用 perl 模块。