An extension for managing projects. Feature rich, customizable, automatically finds your projects.
It comes packed with a lot of features:
Groups: if you have many projects you'll find the ability to separate them into groups pretty valuable. Groups can be nested indefinitely.
Group switching: if you have many groups, you can choose to view only projects belonging to a single one of them. Switching between groups is super easy.
GitTower integration (macOS): if you are already using the awesome GitTower for managing your repositories this extension can automatically import your repositories!
VSCode/Git/SVN/HG integration: it can find your VSCode, Git, SubVersion and Mercurial projects too.
Customizable: add icons, sort groups/repositories manually or by name, custom indentation width, hide paths/descriptions, switch paths/descriptions position, customizable statusbar component.
Explorer/Activity Bar view: it adds a view for easy switching between projects.
Extra informations: it can show you extra informations about your projects:
Ahead/Behind (Git): enable the projects.showAheadBehind setting to see how many commits ahead or behind the repository is.
Branch (Git): enable the projects.showBranch setting to have the branch of a repository displayed next to its name. You can filter out branches via the projects.ignoreBranches setting.
Dirty state (Git): enable the projects.checkDirty setting to have an icon indicating that a repository is dirty (has uncommitted changes) next to its name. If you have many projects the very first time you open your projects list it may tike a bit.
Path existence: enable the projects.checkPaths setting to have an icon indicating which projects are currently non-openable next to their name. For instance if you have projects inside encrypted disk images this extension will basically tell you which are unmounted.
Follow the instructions in the Marketplace, or run the following in the command palette:
ext install fabiospampinato.vscode-projects-plus
It adds 9 new commands to the command palette:
'Project: Open' // Open a project
'Project: Open in New Window' // Open a project in a new window
'Project: Add to Workspace' // Add a project to the workspace
'Project: Save' // Save this project in the configuration file
'Project: Remove' // Remove this project from the configuration file
'Projects: Edit Configuration' // Open the configuration file
'Projects: Refresh' // Automatically find projects
'Projects: Switch Group' // Change context to another group
'Projects: Open Group' // Open all projects inside a group in a single window