Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FR: Render elided commits in jj log as synthetic node #2971

Closed
martinvonz opened this issue Feb 6, 2024 · 5 comments
Closed

FR: Render elided commits in jj log as synthetic node #2971

martinvonz opened this issue Feb 6, 2024 · 5 comments
Assignees
Labels
enhancement New feature or request polish🪒🐃 Make existing features more convenient and more consistent

Comments

@martinvonz
Copy link
Owner

Is your feature request related to a problem? Please describe.

We currently render elided nodes in the log output as dashed lines, like this:

◉  tou yuya@tcha.org 2 days ago 99f0e7f8
╷  cli: remove workaround for ": {source}" embedded in error message
╷ ◉  oxlm ben@brittain.org 2 days ago pager@origin cb232258
╭─╯  cli: Provide better flags for the "less" pager than default
◉  kksnw ben@brittain.org 2 days ago ae3404cd
│
~

It's not obvious what the dashed lines mean.

Describe the solution you'd like

It would be clearer if we inserted a synthetic node where we elide commits:

◉  tou yuya@tcha.org 2 days ago 99f0e7f8
╷  cli: remove workaround for ": {source}" embedded in error message
◌ (elided commits)
╷
╷ ◉  oxlm ben@brittain.org 2 days ago pager@origin cb232258
╭─╯  cli: Provide better flags for the "less" pager than default
◉  kksnw ben@brittain.org 2 days ago ae3404cd
│
~

We might not even need to draw the dashed lines if we do (but they're not expensive or anything, so we could).

If we draw a synthetic node for elided commits in the middle of the graph, then it would also make sense to also do that instead of the tilde we currently draw for elided nodes going to the root.

We may or may not want to also mention the number of elided commits (e.g. "(1234 elided commits)"). Depends on how cheap we can make it.

This would also solve #1252.

Describe alternatives you've considered

We could instead use some clearer symbol for dashed line, possibly using more space.

@PhilipMetzger PhilipMetzger added enhancement New feature or request polish🪒🐃 Make existing features more convenient and more consistent labels Feb 7, 2024
@epage
Copy link

epage commented Feb 11, 2024

For git-stack, I was considering a vertical ellipses for the synthetic node for elided commits.

@ilyagr
Copy link
Collaborator

ilyagr commented Feb 11, 2024

I actually think ~ is pretty good for elided commits.

@arxanas
Copy link
Collaborator

arxanas commented Feb 11, 2024

Here's an example of what omitted commits look like in git-branchless:

Screenshot 2024-02-11 at 12 30 33

Note that the log is reversed and trunk commits are represented with an ellipsis without a commit count. (Also, it doesn't use , but it should because that's clearly a better choice of icon.)

@martinvonz martinvonz self-assigned this Feb 12, 2024
@thoughtpolice
Copy link
Collaborator

See also: #3124 for an experiment I'm running with a totally different icon which I think looks like a "scissor snip."

@bnjmnt4n
Copy link
Collaborator

bnjmnt4n commented May 6, 2024

Closing since this was done in #3027. #3099 tracks the display of number of elided commits in the synthetic node.

@bnjmnt4n bnjmnt4n closed this as completed May 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request polish🪒🐃 Make existing features more convenient and more consistent
Projects
None yet
Development

No branches or pull requests

7 participants