1. Background
On repos with long linear histories, the graph is mostly intermediate commits that do not help with understanding branch topology. A compact “structure only” view would make merges, divergence points, and branch tips easier to scan without digging through Settings.
2. Proposed Solution
Add a Simplify (or similar) toggle on the main graph panel — ideally in the search/filter bar next to the existing source/branch filters — that:
- When on, hides ordinary linear intermediate commits and keeps branch-relevant ones: branch/tag tips, merge commits, fork/divergence points, and load-boundary commits as needed so the graph stays coherent.
- When off (default), shows full history as today.
- Updates the graph immediately from already-fetched log data (no extra
git log).
- Persists for the panel session like other filter toggles.
Primary affordance should be on the panel itself, not only a hidden setting.
3. Affected Area
Check all that apply.
4. Alternatives or References
- Branch filter already narrows reachability, but does not collapse linear noise inside the selected history.
- A settings-only option would work, but is harder to discover for a view-mode toggle used while reading the graph.
- Similar “important commits only” / simplify ideas appear in other Git GUIs; semantics here would be structural (tips / merges / forks), not first-parent alone.
Reference implementation on a fork (draft PR, intended for upstream once reviewed): bkamuz#1
5. Additional Context (optional)
Happy to adjust naming, keep/drop rules, or shrink the diff further to match project conventions. Not urgent given the current maintenance pause — opening this so it is tracked for when review resumes.
1. Background
On repos with long linear histories, the graph is mostly intermediate commits that do not help with understanding branch topology. A compact “structure only” view would make merges, divergence points, and branch tips easier to scan without digging through Settings.
2. Proposed Solution
Add a Simplify (or similar) toggle on the main graph panel — ideally in the search/filter bar next to the existing source/branch filters — that:
git log).Primary affordance should be on the panel itself, not only a hidden setting.
3. Affected Area
Check all that apply.
4. Alternatives or References
Reference implementation on a fork (draft PR, intended for upstream once reviewed): bkamuz#1
5. Additional Context (optional)
Happy to adjust naming, keep/drop rules, or shrink the diff further to match project conventions. Not urgent given the current maintenance pause — opening this so it is tracked for when review resumes.