Resolve "Integrate with IntelliJ Git plugin to interact with the git repository"

This MR connects the plugin to the Git4Idea plugin. Git4Idea is bundled with every JetBrains IDE and handles integration between Git and the IDE.

gitlab-vscode-extension

This MR copies the GHProjectRepositoriesManager from the JetBrains github plugin. This Manager class had all the logic we needed, including listening on GitLab account changes and Git repository changes.

All files that are copied from the JetBrains repo have the Apache 2.0 License header.

I copied all the tests and added one very simple test for the Manager which wasn't part of the JetBrains implementation.

Known issues

  • The GHEnterpriseServerMetadataLoader.kt implementation requests metadata from GitHub enterprise servers. I created a dummy equivalent so I don't have to alter the RepositoriesManager implementation too much. But we will have to change the dummy implementation in the future.
  • The GitHub namespace parsing doesn't support nested groups. We'll have to add a support for nested groups in the project name.
  • The ToolWindow implementation is simplistic. It's only meant to validate that the GlProjecdtRepositoriesManager correctly parsed knownRepositories

Related to #7 (closed)

Edited by Tomas Vik (OOO back on 2026-04-07)

Merge request reports

Loading