-
Notifications
You must be signed in to change notification settings - Fork 874
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
Git history and diff view improvements #7128
Conversation
done, added a screenshot of the file filter. |
7cf9a42
to
aff4bbe
Compare
I found a few more issues but thats as much I want to do via a single PR. File filter is now implemented, this required some optimizations - which is a good thing since this made everything faster.
|
I added another commit which removes the branch filter of the toolbar. The reason for that is essentially #6594 which never got fully resolved. The branch filter in the toolbar filtered the results after the Secondly: there is a second branch filter in the search options section which runs during |
4fb8227
to
ec86036
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the removal of the secondary branch selector is a helpful simplification and in general this is an improvement. I left a few inline comments.
ide/git/src/org/netbeans/modules/git/ui/history/RevisionNode.java
Outdated
Show resolved
Hide resolved
ide/git/src/org/netbeans/modules/git/ui/history/RevisionNode.java
Outdated
Show resolved
Hide resolved
ide/versioning.util/src/org/netbeans/modules/versioning/history/SummaryCellRenderer.java
Show resolved
Hide resolved
things I haven't implemented:
|
going to squash/rebase to fewer commits and make this ready to merge soon |
- copy tab and divider state when diffs are switched - remove loading screen, simply swap out the diff views - git diff generation is very fast - this avoids flickering when switching between diffs - added vertical / horizontal layout switcher - commit tree nodes use now the commit icon - files are colored based on their git add/remove/modify state - add key binding to next/prev button tooltip text
add collapse commit message link - message could only be expanded in past - make the expand link more obvious improve path length computation performance - path length state is stored in RevisionItemCell so that it doesn't have to be constantly recomputed in EventRenderer - removal of the 20 path limit fixes the layout of larger commits - make the event link a bit more obvious - desaturate merge commit entries as originally intended
- implemented 'All' and 'File' filter and made 'All' the default - fixed search highlighting for the diff view's msg and author columns - fixed search highlighting in selected summary entries - implemented search highlighting for paths - highlighting works now in tooltips too performance: add file filter and results cache - added search result cache for significantly improved performance - try to avoid redundant computations and other tweaks
- branch filter already exists in the search options section - having two branch filters can be confusing - jgit allows currently to only mark 24 revs during rev walk. This means that the branch filter could only work with branch information for 23 branches max. This would cause it to incorrectly filter out commits in repos with many branches and can lead to no or wrong results. The branch filter of the search options section is applied during the git command and doesn't have this issue.
a1c63a0
to
d5d6ab8
Compare
Lets try to make the git history UI a bit more useful.
This PR is mostly about UI/UX but fixes an old branch filtering issue too (#7128 (comment))
screenshots:

diff view:

summary view:

quick search filter:

added file filter and path highlighting:

toolbar tooltip of next/prev buttons shows keybindings:
