Python ReadTheDocs面临的挑战
我的任务是托管我们的Python API文档,供客户访问。ReadTheDocs.com是由一位同事推荐的。然而,我在这方面遇到了一些挑战:Python ReadTheDocs面临的挑战,python,documentation,read-the-docs,Python,Documentation,Read The Docs,我的任务是托管我们的Python API文档,供客户访问。ReadTheDocs.com是由一位同事推荐的。然而,我在这方面遇到了一些挑战: 默认方法是让ReadTheDocs完全访问我们的代码repo,其中的文档只是一个子文件夹。这是一个非启动,不可能 因此,我的下一个想法是将Docs文件夹的副本复制到一个单独的repo中,并允许ReadTheDocs访问它。这里的问题是,文档是从我们的代码自动生成的,所以这种方法会留下大量不完整的文档 ReadTheDocs似乎无法托管构建的文档网站(例如i
pip安装Sphinx
——阅读指南了解如何安装docs
文件夹中运行sphinx快速启动(必须是空文件夹)
:n将源目录和生成目录分开?
:一个整洁的面向公众的项目名称项目名称
:制作API的开发人员姓名作者姓名
:API的当前版本项目发布版
docs
文件夹中构建它看到的任何内容(它将自动确定哪个)。如果一切顺利,您应该能够打开文档页面并查看演示页面docs/index.rst
。RST代表重组文本,类似于减价。你可以在网上找到它的备忘单。以下是自动生成的文件的外观:
.. Test documentation master file, created by
sphinx-quickstart on Mon Mar 19 18:24:58 2018.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Welcome to Test's documentation!
================================
.. toctree::
:maxdepth: 2
:caption: Contents:
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
您可以从底部删除“索引和表”部分——我不完全确定它的用途
。。目录树::
是一个通用菜单-您只需在index.rst
中定义它,就可以在其他页面上删除它。要创建新的文档页面,请创建一个新的*.rst
文件。您所称的内容将对应于它呈现到的.html
文件。例如,parameters.rst
将通过http://mydocs.readthedocs.org/en/latest/parameters.html
。要将parameters.rst
页面添加到菜单中,需要如下所示:
.. toctree::
:maxdepth: 2
:captions: Contents:
parameters
基本上,您需要将.rst
文件的名称(不带扩展名)添加到。。在index.rst
文件中的目录树
(其他地方都没有)
应用更改
要应用所做的更改并将其发布到ReadTheDocs页面,您只需将新的.rst
文件提交到GitHub上的主分支,RTD将自动为您构建和发布
如果您还没有完全理解,RTD不接受.html文件。您不应该将任何.html文件提交到GitHub,而应该只提交.rst文件。.rst文件将由RTD生成并发布
版本
您可以使用Git标记来管理文档的版本。有关更多详细信息,请参阅(官方ReadTheDocs文档)
希望这是有用的 如果您的项目在GitHub上,那么您可以使用您选择的支持PDF生成的静态站点生成器(SSG)来满足您的需求
以最简单的形式,创建一个GH操作来生成分支/发布的静态站点文件夹,然后将该文件夹推送到GH页面所指向的分支中的相应文件夹,例如GH页面。应将其中一个分支/发布推送到根目录。可能会有帮助。向静态网站添加指向匹配文件夹的版本下拉列表
例如:
与ReadTheDocs免费计划相比的优势:
- 没有广告
- 完全托管在GitHub上,无需第三方服务或授权
向他们支付咨询workPal的费用,感谢您的回复。请原谅我没有说得更清楚。我们的文档采用斯芬克斯要求的格式。但我不能只是复制到另一个回购文件,因为我们的代码中有指向docstring的链接。我们也不能让ReadTheDocs完全访问我们的代码。鉴于这些限制,您会建议我们怎么做?您不能为RTD提供对您的代码的完全访问权限是什么意思?这是私人Github回购协议吗?RTD是