mirror of
https://github.com/microsoft/vscode.git
synced 2026-09-25 17:27:26 +01:00
Trying to stage a commit in an empty repository (i.e. no prior commits) results in a git fatal error. This is because in an empty repo, HEAD doesn't point to anything causing `git ls-tree -l HEAD ...` to fail. To fix this, send `treeish` as `'HEAD'` to `getObjectDetails()` only if there is at least one commit in the repo. Else, send an empty string causing `getObjectDetails()` to use `lsFiles` instead of `lsTree`. Fixes #82026
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.
-
Copy
src/api/git.d.tsto your extension's sources; -
Include
git.d.tsin your extension's compilation. -
Get a hold of the API with the following snippet:
const gitExtension = vscode.extensions.getExtension<GitExtension>('vscode.git').exports; const git = gitExtension.getAPI(1);