在 c/c++ 应用程序中使用什么:libgit2 或 git 命令控制台输出通过管道

问题描述

我想编写一个 git 查看器,其主要功能是:时间的水平轴(可旋转/可缩放)。提交应该像这样显示

https://www.nobledesktop.com/image/gitresources/git-branches-merge.png

有两个重要方面:

  • 它们应该与时间轴相关,这意味着如果提交 A 和 B 之间的时间比 C 和 D 之间的时间少,那么 A 和 B 应该比 C 和 D 彼此更接近
  • 节点的大小应该取决于提交的大小

用户应该能够随心所欲地旋转图形,甚至像大多数 git 查看器一样使时间轴水平。

还应该有一种方法可以在任何提交之间显示目录差异(类似于 meld 在他们完全搞砸之前所做的)。

当然,应该将单个文件差异视为并排和统一差异,就像从 dir-diff 视图中看到的一样。

应该有高级 DSL 用于根据姓名、作者、日期等过滤分支和提交(a-la Wireshark)。

可能会有报告,比如谁在这个月或那个月写了更多的代码,但我更喜欢为类似的东西添加一个插件系统。此外,还有 Gitlab、Bitbucket,你可以说出它的名字。

这个项目的目的是制作一个工具,只做一件事情,所以它应该只是一个查看器,没有提交,没有变基,没有合并。最终拉。 我听说 libgit 是个笑话。 libgit2 也是如此吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)