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
RevDiff: Request GitStatus updates at file manipulations #8894
RevDiff: Request GitStatus updates at file manipulations #8894
Conversation
Codecov Report
@@ Coverage Diff @@
## master #8894 +/- ##
==========================================
+ Coverage 56.05% 56.07% +0.01%
==========================================
Files 922 923 +1
Lines 65861 65881 +20
Branches 12084 12087 +3
==========================================
+ Hits 36920 36941 +21
- Misses 25924 25934 +10
+ Partials 3017 3006 -11
Flags with carried forward coverage won't be shown. Click here to find out more. |
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.
Thank you! Feels much more responsive.
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.
👍 with minor suggestions
review comments and a similar changes (few) for revfile, browse. (I ignored editing of .gitignore and similar, there are maybe other situations too that will be affected by edit+edit if #8886 is included). Tested with patched GitStatusMonitor so it runs continuously, works OK. The UI flashes a little but that is separate. Will squash for merge in about a day (or at feedback). |
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.
👍
A scenario that is not handled is if you update a submodule in the side panel, without any filesystem changes (for example for a merge commit). |
For (most) operations related to changes of worktree or index status in Browse, request immediate git-status update, for the commit count and artificial commit. This will bypass the delay between updates. Also changes worktree<->index would not trigger updates. Note that operations to submodules in the sidepanel still requires file system changes.
7bf5ff5
to
62c5f21
Compare
@msftbot merge in 24 hours |
Hello @gerhardol! Because you've given me some instructions on how to help merge this pull request, I'll be modifying my merge approach. Here's how I understand your requirements for merging this pull request:
If this doesn't seem right to you, you can tell me to cancel these instructions and use the auto-merge policy that has been configured for this repository. Try telling me "forget everything I just told you". |
#8886 (comment)
Proposed changes
Whenever files are manipulated in RevDiff, request GitStatusMonitor refresh
I considered to request the update only at (likely) worktree <-> index changes, but that got more complicated and a faster update is desired after manual changes.
If you stage files one by one, if may cause git-status to run more or less continously (where Git is slow). I do not believe this is a problem, but the request could be done with some delay too.
@mstv?
Note that FormCommit is not affected, it always rescans (not directly with git-status) when a change is done.
Candidate for 3.5 too
Test methodology
Manual
✒️ I contribute this code under The Developer Certificate of Origin.