git_revwalk 忽略推送引用的顺序?
git_revwalk ignores order of pushed refs?
在使用 git_revwalk
时(通过 Objective-Git 的 GTEnumerator
),我试图首先订购最近更新的分支。我正在调用 gt_revwalk_push
并使用按提交日期排序的引用,但它没有任何效果。已排序、反向排序和未排序的结果都是一样的。
使用不带 GIT_SORT_TOPOLOGICAL
的 GIT_SORT_TIME
很接近,但我确实需要拓扑排序,所以我设置了两个标志。
有没有办法让 git_revwalk
按照我给的顺序使用 refs?
libgit2 通常不会提供与 git 完全相同的拓扑排序,因为有多种可能的拓扑排序都是正确的。
A recent PR 从 git 移植了更多代码以使输出由于其他原因更加一致,因此您可以利用它。指定拓扑和基于时间的排序 (GIT_SORT_TOPOLOGICAL | GIT_SORT_TIME
),相当于 git rev-list
的 --date-order
将使用当前 master
.[= 按时间对您请求的提示进行排序。 15=]