有没有一种干净的方法可以在 gitdags 中创建偏移分支?

有没有一种干净的方法可以在 gitdags 中创建偏移分支?

Julien Cretel 创造了优雅的吉特达格斯用于轻松生成教育 git 图表的包,我目前正在使用它为我的团队创建教育和参考材料。

在某些情况下讨论分支时,我喜欢在图表中添加“扭结”,以直观地强化这样一种观点:分支代表一条开发线,而其他工作可能会同时继续进行

带有分支“kink”的 Git 图

有没有一种干净的方法可以告诉 gitdags/TikZ 像这样垂直偏移节点?

答案1

我不知道这是否算作“清洁器”(而且我也不知道这个gitdags包)但无论如何:

\documentclass[tikz,border=5]{standalone}
\usepackage{gitdags}
\tikzgraphsset{%
  nudge/.style={/tikz/shift={#1}},
  nudge down/.style={nudge=(270:#1)},
  nudge down/.default=1
}
\begin{document}
\begin{tikzpicture}
\gitDAG[grow right sep = 2em]{
  {[nodes=placeholder commits] "..."}  -- A -- B -- C -- 
  {[nudge down]
    D -- E;
  }
};
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

我当前用于生成问题中的图表的解决方案是沿着主分支创建一个不可见的节点,该节点强制D进入下一行:

\gitDAG[grow right sep = 2em]{
  {[nodes=placeholder commits] "..." } -- A -- B -- C -- {
    "" [placeholder];
    D [>opacity=0.75] -- E;
  }
};

该位在主分支"" [placeholder];之后创建不可见节点;代表一条平行的发展线,因此与不可见节点垂直对齐。CD

这个技巧可以完成任务,但感觉很不专业,尤其是因为我们必须在完成后重置边缘不透明度([>opacity=0.75])。如果不进行此重置,节点DE将被渲染,但其边缘将不会渲染。

相关内容