问题描述
我有几个项目,每个项目有一个存储库。其中一个存储库管理着一个全局文档,其他所有存储库都是python软件包。
我想使每个软件包的文档保持独立(不仅是模块文档,还包括安装说明/示例/等)。换句话说,每个程序包都负责其自己的文档。
主要文档存储库应包括所有文档(并在其上添加一些结构以及一些文本,以将所有这些软件包链接在一起)。我正在寻找比现在更简单/清洁的解决方案。
当前解决方案
包装文件
每个程序包都有一个doc/
文件夹,其中包含两个module_description.rst
(结构化自动文档语句)。例如,对于package_name
,看起来或多或少是这样的:
Interface
----------
.. autoclass:: package_name.AbstractClass
:members:
:undoc-members:
:member-order: bysource
Basic implementations
---------------------
.. autoclass:: package_name.ImplementationOne
:members:
:undoc-members:
:member-order: bysource
.. autoclass:: package_name.ImplementationTwo
:members:
:undoc-members:
:member-order: bysource
.. toctree::
:glob:
:hidden:
:maxdepth: 2
module_description
tutorials/*
examples/*
############
Package Name
############
Install instructions
====================
.. code-block:: bash
pip install package_name
主要文档
主要文档包括对仅包含一行的文档的引用:
.. include:: ../../submodules/package_name/doc/_sources/index.rst
如您可能猜到的,要使这项工作有效,我使用了一个git子模块,该子模块指向package_name
存储库,并允许我获取文件package_name/doc/_sources/index.rst
。单独执行此操作无效,因为autodoc语句找不到模块package_name
。
因此,我需要在主文档中安装软件包。我有两个选择,要么从子模块安装,要么直接从程序包注册表安装(两者都可以)。
问题
我可以避免添加git子模块,而仅安装package_name
吗?如果是这样,如何从主要的狮身人面像文档中加入其doc/index.rst
?
也许有更好的方法,但是我找不到关于此的文章。当我努力寻找合适的词问我的搜索引擎朋友时,任何参考都将受到欢迎。
请注意,我有一个约束,我希望gitlab从此主要文档版本生成页面。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)