git_revwalk 忽略推送引用的顺序?

git_revwalk ignores order of pushed refs?

在使用 git_revwalk 时(通过 Objective-Git 的 GTEnumerator),我试图首先订购最近更新的分支。我正在调用 gt_revwalk_push 并使用按提交日期排序的引用,但它没有任何效果。已排序、反向排序和未排序的结果都是一样的。

使用不带 GIT_SORT_TOPOLOGICALGIT_SORT_TIME 很接近,但我确实需要拓扑排序,所以我设置了两个标志。

有没有办法让 git_revwalk 按照我给的顺序使用 refs?

libgit2 通常不会提供与 git 完全相同的拓扑排序,因为有多种可能的拓扑排序都是正确的。

A recent PR 从 git 移植了更多代码以使输出由于其他原因更加一致,因此您可以利用它。指定拓扑和基于时间的排序 (GIT_SORT_TOPOLOGICAL | GIT_SORT_TIME),相当于 git rev-list--date-order 将使用当前 master.[= 按时间对您请求的提示进行排序。 15=]