如何将Wiki从FogBugz 6导出到(差不多)任何其他wiki(最终目的地:Confluence)?

cem*_*ick 9 scripting fogbugz wiki export confluence

我们有一个FogBugz 6安装,有很多维基内容.我们正在转换使用Atlassian产品(JIRA和Confluence),因此我们希望将该wiki内容转换为Confluence.你会怎么做?

不幸的是,FogBugz似乎没有提供任何类型的wiki导出功能,Confluence也没有提供任何FogBugz wiki导入.

FogBugz确实有一个API,但它对访问wiki内容的细节有点了解.我们并不真正关心页面的过去修订(只是内容,链接和图像/附件),因此不清楚API是否比使用wget或其他东西抓取FB wiki并使用HTML和那里的图像/附件.

Confluence有一个功能齐全的内容导入实用程序,支持许多源wiki:

  • TWiki的
  • PmWiki的
  • DokuWiki的
  • Mediawiki的
  • MoinMoin的
  • JotSpot公司
  • Tikiwiki
  • 了JSPWiki
  • 的SharePoint
  • SWiki
  • Vqwiki
  • XWiki实现
  • TRAC

那里没有FogBugz选项,但是如果我们可以将FogBugz wiki内容导出到上面的一个wiki中,那么我们可能会从那里使用Confluence多维基因导入器.

或者,我们可以使用wget来抓取FogBugz wiki内容,然后找到一种方法将静态HTML +图像+附件放入Confluence或上面的其他wiki之一作为Confluence的垫脚石.

思考?

cem*_*ick 6

一位同事最终搞清楚了这一点,并且该流程最终普遍适用于我们想要融入Confluence的其他网络内容.总的来说,这个过程包括:

  1. 使用wget从FogBugz中获取所有内容(配置为正确下载图像和附件,并且链接到它们和其他页面被正确地相对化).
  2. 使用简单的XSLT转换去除包围每个页面主体的"模板"内容(例如徽标,控制/导航链接等).
  3. (可选)使用perl模块将生成的HTML片段转换为Confluence的标记格式
  4. 使用Confluence命令行界面来推送所有页面,图像和附件数据.

请注意,我在上面的#3中说"可选".这是因为Confluence CLI有两个相关的选项:它可以直接用于创建新页面,在这种情况下,它可能已经预期Confluence标记,或者它可以用于使用HTML创建新页面,它将转换为Confluence标记本身.在某些情况下,Confluence CLI转换HTML就好了; 对于其他数据源,我们需要使用perl模块.