Re: 'git rev-list' commit ordering issue
- From
- Clement Moyroud <clement.moyroud@gmail.com>
- Date
- Feb 28, 2025, 16:05 UTC
- Message-ID
- <CABXAcUyWu3zi_iXrSoc1ymZCYtE5u4+JybJp2TiCCJA18T-4CQ@mail.gmail.com>
- In-Reply-To
- <d7b1416d-d201-400e-a0eb-b9e526f740ab@gmail.com>
On Fri, Feb 28, 2025 at 2:59 AM Phillip Wood <phillip.wood123@gmail.com> wrote:
Show 24 quoted lines
> > Hi Clement > > On 26/02/2025 22:30, Clement Moyroud wrote: > > On Wed, Feb 26, 2025 at 10:58 AM D. Ben Knoble <ben.knoble@gmail.com> wrote: > > > >> Is `--topo-order` of no help here? > > > > Unfortunately no, because it'll look at the ancestors. I get more > > commits (400k+ extra > > commits in my real world case) than I have on stdin: > > $ git log -1 --pretty=%H 2025.2 | git rev-list --stdin --topo-order --count > > 417776 > > This seems to have lost "--no-walk". > > ... | git rev-list --stdin --topo-order --no-walk > > should list only the commits passed on stdin in topographic order I think. > > Best Wishes > > Phillip >
Hi Philip,
I wish that were the case :) Per the docs: | If the argument unsorted is given, the commits are shown in the order they | were given on the command line. Otherwise (if sorted or no argument was | given), the commits are shown in reverse chronological order by commit time.
As soon as you specify --no-walk, topological ordering is disabled. I _think_ it's because it will instruct `rev-list` not to look at the ancestors. It looks like a new in-between option is needed, where topological ordering is used when the dates match.
Cheers,
Clement
Show 38 quoted lines
> > -- > > Clement > > > >> > >>> > >>> Below is the system info gathered by `git bugreport`. > >>> > >>> Take care, > >>> > >>> Clement > >>> > >>> > >>> [System Info] > >>> git version: > >>> git version 2.48.1 > >>> cpu: x86_64 > >>> no commit associated with this build > >>> sizeof-long: 8 > >>> sizeof-size_t: 8 > >>> shell-path: /bin/sh > >>> libcurl: 7.87.0 > >>> OpenSSL: OpenSSL 1.0.1e-fips 11 Feb 2013 > >>> zlib: 1.2.3 > >>> uname: Linux 4.18.0-553.33.1.el8_10.x86_64 #1 SMP Thu Dec 19 14:28:01 > >>> UTC 2024 x86_64 > >>> compiler info: gnuc: 6.2 > >>> libc info: glibc: 2.28 > >>> $SHELL (typically, interactive shell): /bin/zsh > >>> > >>> > >>> [Enabled Hooks] > >> > >> > >> > >> -- > >> D. Ben Knoble > > >