Files
vscode/extensions/git
Dmitriy Vasyura f45c4ba051 Throttle initial Git repository.status() across repositories (#318862)
Git - throttle initial repository.status() across repositories

Each repository.status() spawns ~10 git subprocesses. With many repos in a workspace, fan-out can saturate the extension host and trigger the IPC unresponsive watcher kill loop. Bound concurrency with a Limiter(5).

Fixes #318279

Fixes #318764
2026-05-29 18:23:21 -07:00
..

Git integration for Visual Studio Code

Notice: This extension is bundled with Visual Studio Code. It can be disabled but not uninstalled.

Features

See Git support in VS Code to learn about the features of this extension.

API

The Git extension exposes an API, reachable by any other extension.

  1. Copy src/api/git.d.ts to your extension's sources;

  2. Include git.d.ts in your extension's compilation.

  3. Get a hold of the API with the following snippet:

    const gitExtension = vscode.extensions.getExtension<GitExtension>('vscode.git').exports;
    const git = gitExtension.getAPI(1);
    

    Note: To ensure that the vscode.git extension is activated before your extension, add extensionDependencies (docs) into the package.json of your extension:

    "extensionDependencies": [
    	"vscode.git"
    ]