Github 在 README.md 中包含 md 文件?

问题描述 投票:0回答:6

Github有没有办法将md文件包含在例如README.md中?

# Headline

Text

[include](File:load_another_md_file_here.md)

它不应该链接到文件,它应该从中加载内容,就像 PHP include / file_get_contents 一样。

github markdown readme
6个回答
56
投票

这似乎不可能,尤其是考虑到

github/markup#346
github/markup#172

不支持包含指令。


16
投票

因为这是不可能的,所以我最终将链接设置为

[MY-LINK](../../SOME-OTHER-README.MD)

11
投票

将您的自述文件迁移到另一个文件,然后按照您喜欢的方式构建实际的自述文件作为 github 操作

编辑:这是一个您可以构建的演示。该存储库有一个 github 操作,该操作运行一个脚本,该脚本根据存储库的内容动态构建 README.md(以目录形式为存储库构建站点地图):https://github .com/dmarx/bench-warmers

工作流程配置:

name: update-readme

on:
  push:
    branches: [ "main" ]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-python@v2
      - name: Run the script
        run: python scripts/update_readme.py
      - name: Commit files
        run: |
          git config --local user.name "dmarx"
          git add README.md
          git commit -m "Updated TOC"
      - name: Push changes
        uses: ad-m/github-push-action@master
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          force: true

这是我的更新脚本中与您相关的部分:

... # code that builds the object `toc_str`

# template readme
with open('README.stub') as f:
    readme_stub = f.read()

# simple replacement, use whatever stand-in value is useful for you.
readme = readme_stub.replace('{TOC}',toc_str)

with open('README.md','w') as f:
    f.write(readme)

假设您有一个名为

README.stub
的文件,它可能看起来像这样:

# Title

some text

{TOC}

more text

其中

{TOC}
是我们动态内容的替换目标。


10
投票

这不是正确的答案,而是其他真正想要这个的人的解决方法。

可以使用 GulpGulp Concat 将文件合并为一个,然后再发送到 Github..


2
投票

Ruby gem markdown_helper 实现 GitHub 风格的 Markdown (GFM) 的包含文件。

披露:我写了宝石。


0
投票

注意直接答案,因为 GFM 不支持包含,但我保留了我发现的项目列表,可以让您通过预处理步骤包含内容以生成最终的 Markdown 文件:

https://github.com/realazthat/snipinator/#-lated-projects

披露:我写了snipinator。

© www.soinside.com 2019 - 2024. All rights reserved.