如何将FogBugz 6中的维基导出到(几乎)任何其他维基(最终目的地:Confluence)?

11
我们有一个FogBugz 6安装,有大量的维基内容。 我们正在过渡到使用Atlassian产品(JIRA和Confluence),因此我们希望将那些维基内容转移到Confluence。你会如何处理?
不幸的是,FogBugz似乎没有提供任何维基导出功能,而Confluence也没有提供任何FogBugz维基导入。
FogBugz确实有一个API,但在访问维基内容方面缺乏细节。我们并不真正关心页面的过去修订版本(只关心内容,链接和图像/附件),因此并不清楚API是否能够帮助我们更进一步,只能通过使用wget之类的工具来抓取FB维基,并从中处理HTML和图像/附件。
Confluence有一个相当全面的内容导入实用程序,支持多个来源维基:
TWiki PmWiki DokuWiki Mediawiki MoinMoin Jotspot Tikiwiki Jspwiki Sharepoint SWiki Vqwiki XWiki Trac
这里没有FogBugz选项,但如果我们可以将FogBugz维基内容导出到上述维基之一,那么我们可能可以从那里使用Confluence多维基导入程序。

或者,我们可以使用wget来爬取FogBugz维基内容,然后找到一种方法将静态HTML + 图像 + 附件放入Confluence或上述其他维基之一,作为进入Confluence的跳板。

你有什么想法?


1
我觉得这在这里被问到有点有趣。 - Aaron Maenpaa
1
我认为你不需要为乔尔感到难过。FogBugz是一个很棒的工具,我们一直在使用它(现在仍在使用)--但需求会发生变化。耸肩 我相信即使没有我们,乔尔的世界统治也将继续蓬勃发展。;-) - cemerick
1个回答

6
一位同事最终找出了解决方案,而这个过程也适用于我们想要导入Confluence的其他Web内容。大致上说,这个过程包括以下几个步骤:
  1. 使用wget将FogBugz中的所有内容抓取下来(配置使图像和附件正确下载,并且链接到它们和其他页面也被正确地相对化)。
  2. 使用简单的XSLT转换去除每个页面正文周围的“模板”内容(例如标志、控件/导航链接等)。
  3. (可选)使用Perl模块将生成的HTML片段转换为Confluence格式。
  4. 使用Confluence命令行接口推送所有页面、图像和附件数据。
请注意,上述步骤3中我说“可选”。因为Confluence CLI有两个相关选项:它可以直接用于创建新页面,此时它期望已经有Confluence标记语言,或者它可以用于使用HTML创建新页面,然后将其转换为Confluence标记语言。在某些情况下,Confluence CLI可以很好地转换HTML;对于其他数据源,我们需要使用Perl模块。

1
不妨直接从FogBugz数据库中获取原始文本,而不是使用wget下载HTML。select sHeadline, sBody from wikipage ... - Mikhail T.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接