[英]Git log with Json hierarchy
问题是我有这个 git 命令
git log --pretty=format:'%n{%n%d%n "CommitHash": "%H",%n "Author":
"%an",%n "AuthorEmail": "%ae",%n "Date": "%ad",%n "Message": "%f"%n}'
` 有了它,我得到了一个 JSON 格式的日志,但我需要将分支作为父亲,将提交名称作为孩子,这些提交名称必须是他们各自信息(作者、日期、电子邮件等... ..)
日志输出应该是这样的:
[
"Branch or Merge Name":"The Branch or Merge Name"[
"Commit Name":"The Commit Name"{
The commit info......
}
]
]
考虑到提交可以是多个分支的一部分,我怀疑这在没有脚本的情况下是否容易实现。
这意味着对于您列表中的任何提交,都没有“一个父亲”,但可能有多个。
反转模型,并将每个提交作为子项,每个提交所属的分支列表会更有意义。
看看这个工具http://bit-booster.com/graph.html他们以 git 格式将日志传递给你 log --pretty = '% h |% p |% d' 我正在尝试做 apache echart。 --pretty = "%H,%P,%D"
% H 展开以显示 commitId。
% P 展开以显示父 commitIds。
% D 展开以显示装饰(标签和分支)。
但是它有一些微妙的问题:
% P 将扩展到所有 % H 的父提交(以空格分隔),因此您需要通过第二个脚本运行输出以更好地将其规范化为适合 D3 的格式。
% P 可能会扩展到 3 个或更多提交(非常罕见)。 这些被称为章鱼合并!
% D 扩展为逗号分隔的装饰列表(分支和标签标签),并且单个提交可能具有的分支和标签数量没有限制。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.