On Thu, Oct 17, 2024 at 10:46:17AM -0700, Henry Qin wrote: > Details in my Stackoverflow question: > > https://stackoverflow.com/questions/79099095/why-is-git-log-significantly-slower-when-outputting-to-a-tty My first thought was "decorations", and indeed somebody gave that answer in the stack overflow thread. The default for log.decorate is "auto", which will turn them on when output is to a tty. You can set it to "false" to disable it. As for why decorations are slow: it is necessarily going to be at least linear in the number of refs, since we have to build the reverse mapping up front. Do you have a lot of refs? What does "git for-each-ref | wc -l" say? -Peff