将图表(例如以xml文件形式呈现的draw.io示意图)通过引用嵌入到markdown中。

10
在我的工作流中,我同时使用git(私有服务器上的GitLab)和draw.io(或已更名为diagrams.net)。 我想知道版本控制图表以及代码的最佳方法,并将它们嵌入到markdown文档中。 我看到可以通过将单个图表导出为未压缩的xml来对其进行版本控制。现在,理想情况下,我希望拥有以下流程: - 在本机应用程序上编辑图表 - 通过导出为xml版本控制图表 - 通过引用将其嵌入到 .md 文档中 换句话说,我希望不需要jpeg / png版本的图表,但仍然可以在markdown中呈现它。这真的可能吗? 我发现了这个支持页面Embed a diagram in GitHub markdown,但似乎并不是我要找的: - 打开嵌入式编辑器 - 我不认为它适用于私人Gitlab服务器?
任何建议(即使涉及不同的工具)都将不胜感激。
2个回答

5

我使用Draw.io图表,结合GitLab和Markdown,在一个独立的自托管场景中。我既使用Ubuntu快照应用程序,也使用Docker镜像。

如果将Draw.io图表保存为"可编辑的SVG"(我喜欢使用扩展名.drawio.svg使其更加显眼),则在SVG文件中保存任何所需的元数据。

这意味着图像大小最小,CI流水线仍可以将文件转换为PNG(如果需要)。SVG可以直接包含在Markdown中,无需每次导出。

GitLab还可以让您在合并请求中"查找差异"。

工作流程:

git checkout -> 在draw.io网站或应用程序中打开*.drawio.svg文件 -> 进行更改 -> 保存 -> 合并请求。


我也使用 .drawio.svg 方法(在 Windows/WSL 上配合 VSCode drawio 扩展 ),但发现合并效果不佳。 svg 文件中的 drawio 元数据 (mxfile) 是压缩的。 实际的 svg 部分是可读/可合并的,但我发现一个小改动几乎会改变所有行,可能是因为它是从头自动生成的。 - Martin Thøgersen
另请参见 https://dev59.com/yL_qa4cB1Zd3GeqPJ4vp#67220405 - Martin Thøgersen

1

您可以查看GitLab 15.10(2023年3月发布),该版本包含以下内容:

使用diagrams.net编辑器在wiki中创建图表

通过使用diagrams.net GUI编辑器,在GitLab 15.10中更容易地在wiki中创建和编辑图表。
此功能在Markdown编辑器和内容编辑器中可用,并与GitLab广泛社区紧密合作实现。

diagrams.net

请参阅文档问题


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接