-
Notifications
You must be signed in to change notification settings - Fork 299
Feature/initial Git VCS provider #1310
Feature/initial Git VCS provider #1310
Conversation
Potentially need to switch |
vim/core/oni-plugin-git/index.js
Outdated
Oni.workspace.activeWorkspace | ||
); | ||
} catch (e) { | ||
console.warn('[Oni.Git.Plugin]: Could not get Summary', e); |
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.
Is there a case where we could not the summary, but we could get the branch? If not, it might make sense to simplify and consolidate these try/catches
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.
That's essentially there for development purposes I'll remove that once the PR is finalised
Excellent. I think Performance is important to consider - but it seems like we're just hooking this to the existing I tried this out locally though and didn't see the status indicator - is that related to needing to switch to |
@bryphe are the changes not working in |
@bryphe To get this PR working once packaged I could just replicate a similar method to manually determine the changes on the branch but something that occurred to me here is that using Node git seems to come with git bundled but there's an issue on the repo about current issues installing it which I'm facing on top of which its api is extensively but arguably poorly documented. I'm looking into seeing if the packaged app can be bundled with git and am wondering if you know about this as I can't find any information regarding this? (that way I can stick with simple git and a use a bundled git executable) EDIT: I'm not entirely certain of my conclusion re. how git operates in electron as when I run |
merge upstream
add per file changes and option to show perfile changes
I've settled on creating a I'm going to log an issue with screenshot with local changes enabled (configurable): EDIT: I'm considering removing the perFile changes as I'm not sure they aren't just confusing and currently I'm not entirely certain they actually work correctly |
add fixme comment to check back in re this typing
change rendering so elements are only created as necessary
fix counting of local changes in case of future use case
…it-changes-in-statusbar
@bryphe I've added tests for all the new vcs stuff using @CrossR think I've addressed the issues in your review except for the icons which I'm going to leave for now if you wanted to have another look over this if you get a chance (side note I put the new sidebar item under an experimental flag till the functionality is fleshed out) |
Actually seems like jest is not collecting coverage at all re. setting up the upload all examples I've seen indicate that this is done with the current settings we are using aka it is set to generate a coverage report and out put it into the the coverage directory not sure if anything else is required remotely |
remove unnecessary type annotations
using thing && thing && component can cause 0 to be rendered
Changes look good to me, and the bits that weren't working for me before (new files + reload on save) work great now! Very excited for this! |
@CrossR thanks for the review 👍 bringing this in now them 🎉 |
Woohoo! Congrats on getting this in @Akin909 - really exciting! Lays the foundation for lots cool possibilities with VCS Thanks for all your hard work on this @Akin909 , and thanks @CrossR for reviewing it! 💯 |
Having had a bit of spare time I've refactored this PR to move the
git
specific functionality into theoni-plugin-git
and use instead an abstractedVersionControlManager
to render ui elements as per #2110, just wanted to point out that this is still an initial implementation so doesn't have all the bells and whistles but hopefully can be view a further step towards achieving #2110Sidebar plugin
Status bar changes
But what I have added so far:
oni-plugin-git
statusbar
,sidebar
,menu
oni.{vcs}.branches
show local branches, selection checkout the branchAdditional Changes (development-related):
package.json
commands tonpm-run-all
(which uses yarn or npm depending on the command) has a much tidier syntax which could potentially make thepackage.json
readable again.Todo
rxjs
- [ ] Render lists with react-virtualizedRequired changes in Feature/ switch explorer rendering to use react-virtualized #2182 - so will hold off adding this till that is merged inwil fix #1308