来自几个 github 个存储库的文档到一个静态站点
Documentation from several github repositories into a static site
我需要一些帮助来确定正确的解决方案,以帮助我为我的朋友创建无缝文档。
我们有几个存储库,其中将放置一个包含多个 .MD 文件的 doc 文件夹
Repo1
|- Readme.MD
|-docs
|- Installation.MD
|- Usage.MD
Repo2
|- Readme.MD
|-docs
|- Installation.MD
|- Usage.MD
Repo3
|- Readme.MD
|-docs
|- Installation.MD
|- Usage.MD
我们想使用类似 vuepress 的东西来生成静态站点。
如果有tool/framework可以轻松解决这个问题。我将不胜感激
非常感谢您的任何回复,我们一定会把我们所做的放在下面
这是一个想法,
- 初始化存储库,我们称之为
TheRepo
- 将所有依赖的回购(在我们的例子中
Repo1
、Repo2
、Repo3
)添加为 git submodules 到 TheRepo
现在我们拥有从 Repo1
、Repo2
和 Repo3
到 TheRepo
的所有内容,我认为这可能不适合文档网站。
- 创建一个 bash 脚本(使用
find
、grep
、rm
或类似的 bash 魅力)以保留所需的 *.md
文件并删除不需要的源文件。这是 how-to 上的示例:
// remove everything else that is not markdown file
find . -type f ! -name '*.md' -delete
- 在
TheRepo
的根目录初始化 vuepress 并让 vuepress 生成联合文档。
如果您在第 3 步做得很好。您可以在生成的文档中为每个单独的依赖项 Repo 单独 section/classification。
要刷新内容,只需使用 git submodule update
更新文档,然后将其与步骤 3 中创建的脚本链接起来,以自动执行刷新过程。
git submodule update && ./remove-undesirable-files.sh
您可以使用 MkDocs as your static site generator and the multirepo plugin. Below are the steps to get it all setup. I assume you have Python installed and you created a Python venv 来完成此操作。
python -m pip install git+https://github.com/jdoiro3/mkdocs-multirepo-plugin
mkdocs new my-project
cd my-project
- 将以下内容添加到您新创建的
mkdocs.yml
。这将配置插件。
plugins:
- multirepo:
repos:
- section: Repo1
import_url: {Repo1 url}
- section: Repo2
import_url: {Repo2 url}
- section: Repo3
import_url: {Repo3 url}
现在,您可以 运行 mkdocs serve
或 mkdocs build
,这将在一个站点中构建一个包含所有文档的静态站点。
我需要一些帮助来确定正确的解决方案,以帮助我为我的朋友创建无缝文档。 我们有几个存储库,其中将放置一个包含多个 .MD 文件的 doc 文件夹
Repo1
|- Readme.MD
|-docs
|- Installation.MD
|- Usage.MD
Repo2
|- Readme.MD
|-docs
|- Installation.MD
|- Usage.MD
Repo3
|- Readme.MD
|-docs
|- Installation.MD
|- Usage.MD
我们想使用类似 vuepress 的东西来生成静态站点。 如果有tool/framework可以轻松解决这个问题。我将不胜感激
非常感谢您的任何回复,我们一定会把我们所做的放在下面
这是一个想法,
- 初始化存储库,我们称之为
TheRepo
- 将所有依赖的回购(在我们的例子中
Repo1
、Repo2
、Repo3
)添加为 git submodules 到TheRepo
现在我们拥有从 Repo1
、Repo2
和 Repo3
到 TheRepo
的所有内容,我认为这可能不适合文档网站。
- 创建一个 bash 脚本(使用
find
、grep
、rm
或类似的 bash 魅力)以保留所需的*.md
文件并删除不需要的源文件。这是 how-to 上的示例:
// remove everything else that is not markdown file
find . -type f ! -name '*.md' -delete
- 在
TheRepo
的根目录初始化 vuepress 并让 vuepress 生成联合文档。
如果您在第 3 步做得很好。您可以在生成的文档中为每个单独的依赖项 Repo 单独 section/classification。
要刷新内容,只需使用 git submodule update
更新文档,然后将其与步骤 3 中创建的脚本链接起来,以自动执行刷新过程。
git submodule update && ./remove-undesirable-files.sh
您可以使用 MkDocs as your static site generator and the multirepo plugin. Below are the steps to get it all setup. I assume you have Python installed and you created a Python venv 来完成此操作。
python -m pip install git+https://github.com/jdoiro3/mkdocs-multirepo-plugin
mkdocs new my-project
cd my-project
- 将以下内容添加到您新创建的
mkdocs.yml
。这将配置插件。
plugins:
- multirepo:
repos:
- section: Repo1
import_url: {Repo1 url}
- section: Repo2
import_url: {Repo2 url}
- section: Repo3
import_url: {Repo3 url}
现在,您可以 运行 mkdocs serve
或 mkdocs build
,这将在一个站点中构建一个包含所有文档的静态站点。