Git Project Manager
Git Project Manager (GPM) is a Microsoft VSCode extension that allows you to open a new window targeting a git repository directly from VSCode window.
Currently there are 3 avaliable commands, all of them can be accessed via Ctrl+Shift+P (Cmd+Alt+P on Mac) typing GPM
GPM: Open Git Project (Defaults to: Ctrl+Alt+P)
Show a list of the available git repositories in all folders configured in gitProjectManager.baseProjectsFolders. The first time it searchs all folders, after that it uses a cached repository info.
GPM: Refresh Projects
This commands refresh the cached repositories info for all configured folders.
GPM: Refresh specific project folder
This commands allows you to select a specific folder to refresh its repositories, without refreshing all folders.
GPM: Open Recent Git Project (Defaults to Ctrl+Shift+Q)
This command will bring a list of your most recent git projects, leting you swap even faster between them.
The size of the list if configured in
Before start using GPM you need to configure the base folders that the extension will search for git repositories. you need to open File -> Preferences -> User Settings
Another available configuration is gitProjectManager.storeRepositoriesBetweenSessions that allows git repositories information to be stored between sessions, avoiding the waiting time in the first time you load the repositories list. It's false by default.
If nothing happens when trying to open a found project it could be due to the Code command being used. To work around this issue set gitProjectManager.codePath to the full path of the Code command to use when launching new instances. This configuration can be defined in 3 formats (this was done to solve issue #7):
First: Define it as a simple string, with the path to code app
Second: Use a object notation to define the path to code path on each platform
Third: An array of file paths, where at least one is a valid path
To improve performance there are 2 new and important configurations that are: ignoredFolders: an array of folder names that will be ignored (node_modules for example)
maxDepthRecursion: indicates the maximum recursion depth that will be searched starting in the configured folder (default:
In version 0.1.10 we also added the "gitProjectManager.checkRemoteOrigin" configuration that allows users to not check remote repository origin to improve performance
Added in version 0.1.12, you can configure the behavior when opening a project if it'll be opened in the same window or in a new window. (this option is ignored if there aren't any opened folders in current window)):
If you have any idea, feel free to create issues and pull requests.