我正在寻找用于组织和维护项目内部文档,规范,要求等的软件。当前,我们将所有文档以大量MS Word DOC文件的形式存储在源代码控制存储库中,这为我们提供了版本控制,这很好。但是您无法搜索此信息,无法在它们之间创建链接,进行分类,进行协作。
要求,偏好:
- 客户端上零安装(基于Web)。
- 文档版本控制。
- 文档注释。
- 文档链接。
- 完整搜索(所有文档)。
- MS Word(* .doc)导入\导出。
- 所见即所得的文本编辑器。
到目前为止,我已经发现并尝试过的系统:
我正在寻找用于组织和维护项目内部文档,规范,要求等的软件。当前,我们将所有文档以大量MS Word DOC文件的形式存储在源代码控制存储库中,这为我们提供了版本控制,这很好。但是您无法搜索此信息,无法在它们之间创建链接,进行分类,进行协作。
要求,偏好:
到目前为止,我已经发现并尝试过的系统:
Answers:
Sphinx之类的东西怎么样?
您用reStructuredText(语法类似于Markdown,Stack Overflow使用的语法)将文档写到纯文本文件(=易于版本控制)中,然后Sphinx吐出HTML页面。
(我所知道的)两个最杰出的Sphinx用户是Python语言和TortoiseHG(请参阅Sphinx生成的文档的链接)。
编辑:
我刚刚读到您在谈论的是项目内部文档,而不是最终用户文档。
我认为,像Sphinx之类的东西也是内部文档的最佳方法(前提是您可以让分析人员编写reStructuredText),因为:
如果Sphinx太复杂,甚至还有一种更简单的方法:您可以在Markdown中编写文档,然后使用Pandoc创建(例如).rtf,.doc或.pdf文件(它可以做更多的事情)。
我发现Pandoc比Sphinx更容易上手,但是Pandoc无法创建像Sphinx这样的漂亮菜单层次结构(就像我上面链接的Python和TortoiseHG文档中一样)。
无论使用哪种工具,如果您具有内部Web服务器和构建服务器,都可以对其进行设置,以使构建服务器生成HTML输出,并在每次有人向文档中推送内容时将其复制到Web服务器上。因此,您的分析师甚至不必考虑最终的输出,他们只需要提交并推动更改即可。
好了,您可以尝试实现Wiki。Mediawiki具有您正在谈论的所有缺少的功能(搜索功能,版本历史记录,链接,分类)。您必须确保确切知道该文档的哪个版本属于该软件的哪个版本,但是可以通过在每个与版本有关的文章中包括版本参考或特定类别的约定来做到这一点。
但是:您写的是不是开发人员的“分析师”(我承认,我不是该领域的粉丝)。当您用某种面向文本的工具(例如Wiki)替换其MS Office工具时,这些人通常不满意。而且由于MS-Word不是免费软件,所以我猜对“免费软件”的要求并不是必须的。在这种情况下,Sharepoint服务器可能是更好的选择。它不是免费的,但AFAIK具有您所要求的所有功能,并且仍然可以使用Word,Excel等创建文档。
另一种可能性可能是使用乳胶或某些其他文本格式化器(可能的texinfo甚至糊涂人)的文档。它的一部分可以机器生成。有一些用于HTML转换的工具,例如HeVeA,可将LaTeX转换为HTML。您还可以使用doxygen从源代码内部的结构化注释中生成文档。并且文档的手写部分可以(并且应该)作为源代码进行管理(例如,wrt版本控制和构建)。
除了您的文档之外,我建议您使用UML和ERD工具。另外,您可以将这些文档存储在ZOHO-Docs的 ZOHO上,这不是免费的,但是它非常便宜,并且可以使用文档搜索功能。
无论最终使用什么工具,都需要仔细组织文档内容,以便能够使用文本搜索并获得有意义的结果。文档内容的组织以及巧妙和标准的文件命名可以极大地帮助您。