Normally in an IDE we have the git function. For example, pull or push file and code from github. Is there any module in Theia to implement such fuction?
@LamYunfu thank you for the discussion, I’m not sure what you have tried yet but the main repository has both modules for git
support being:
- @theia/scm - source control manager.
- @theia/git - source control provider for git.
Alternatively, if you wish to use vscode extensions for additional git support (such as [github pull-requests and issues](https://open-vsx.org/extension/GitHub/vscode-pull-request-github, or gitlens), you’ll need to replace @theia/git
in your application with the appropriate vscode builtin plugins being:
thanks~
@vince-fugnitto Do I understand correctly that adding git and git-ui are the only necessary steps to have theia support vscode-pull-request
?
I get the following error when doing so:
root ERROR [hosted-plugin: 52684] Activating extension 'GitHub Pull Requests and Issues' failed: { Error: No authentication provider 'github' is currently registered.
at AuthenticationServiceImpl.<anonymous> (http://localhost:3000/bundle.js:29308:27)
at step (http://localhost:3000/bundle.js:28975:23)
at Object.next (http://localhost:3000/bundle.js:28956:53)
at http://localhost:3000/bundle.js:28950:71
at new Promise (<anonymous>)
at ../node_modules/@theia/core/lib/browser/authentication-service.js.__awaiter (http://localhost:3000/bundle.js:28946:12)
at AuthenticationServiceImpl.../node_modules/@theia/core/lib/browser/authentication-service.js.AuthenticationServiceImpl.getSessions (http://localhost:3000/bundle.js:29300:16)
at AuthenticationMainImpl.<anonymous> (http://localhost:3000/48.bundle.js:2311:73)
at step (http://localhost:3000/48.bundle.js:2235:23)
at Object.next (http://localhost:3000/48.bundle.js:2216:53)
@jeluard it is definitely a pre-requisite, but it does not guarantee support as there may be missing APIs not yet implemented by the framework.
The version referenced in the following pull-request should work correctly: https://github.com/eclipse-theia/theia/pull/8870.
I’m unclear if I have to provide myself a GitHub authentication provider
or not. Is it not provided by the builtins plugins? This is what I understand from the comment in getSession
here.
I haven’t tried the extension myself, but it looks like it requires some setup?
- https://github.com/Microsoft/vscode-pull-request-github/wiki#1-how-does-authentication-to-github-work
- https://github.com/Microsoft/vscode-pull-request-github/issues/93
Looking at https://github.com/eclipse-theia/theia/pull/8870, there does seem to be some extra work required to get a authentication provider working.