All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Derrick Stolee <derrickstolee@github.com>
Cc: Javier Mora <cousteaulecommandant@gmail.com>, git@vger.kernel.org
Subject: Re: Commit graph not using minimal number of columns
Date: Wed, 26 Apr 2023 09:10:12 -0700	[thread overview]
Message-ID: <xmqq1qk6vd3v.fsf@gitster.g> (raw)
In-Reply-To: <86188f31-f492-d195-d4d5-b0582906621a@github.com> (Derrick Stolee's message of "Wed, 26 Apr 2023 06:45:24 -0400")

Derrick Stolee <derrickstolee@github.com> writes:

> This width is necessary to avoid crossing lines _given the order
> of the commits_, which is picked independently of the graph
> rendering.

Thanks for giving the crucial bit.

Object listing order is determined first, and then graph algorithm
works on the series of commits that comes out of the revision
walking machinery.

> I don't think there is anything actionable to do here, as
> these commit-ordering options are well-defined and should not
> be altered. If there was an algorithm to modify the commit
> order in such a way that minimized the graph output, that
> would be interesting, but the cases it minimizes are probably
> too rare to be worth the effort.

Yes, in addition to and next to "--{topo,date}-order", if somebody
can come up with a new "--graph-friendly-order", it may be an
interesting addition.

A tangent.  I do not offhand remember if --date-order works purely
on the timestamps in the commit objects, or do we take corrections
based on the generation numbers?  It seems that we only use the
compare_commits_by_gen_then_commit_date helper for prio queue
manipulation (to avoid the "slop" thing terminating the revision
walk too early) and not actual sorting.  I wonder if it makes much
difference if we used it instead of compare_commits_by_commit_date()

Thanks.


  reply	other threads:[~2023-04-26 16:10 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-25 23:39 Commit graph not using minimal number of columns Javier Mora
2023-04-25 23:50 ` Junio C Hamano
2023-04-26 10:45   ` Derrick Stolee
2023-04-26 16:10     ` Junio C Hamano [this message]
2023-04-26 17:35       ` Derrick Stolee
2023-04-26 17:43         ` Junio C Hamano
2023-04-27 13:02           ` Derrick Stolee
2023-04-27 18:24             ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqq1qk6vd3v.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=cousteaulecommandant@gmail.com \
    --cc=derrickstolee@github.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.