git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: 'git rev-list' commit ordering issue

From
CMClement 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
> >
>
Previous: Phillip Wood
Message 5 of 5 in “'git rev-list' commit ordering issue”
  1. Clement MoyroudFeb 26, 2025
  2. D. Ben KnobleFeb 26, 2025
  3. Clement MoyroudFeb 26, 2025
  4. Phillip WoodFeb 28, 2025
  5. Clement MoyroudFeb 28, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.