mirror of
https://github.com/microsoft/vscode.git
synced 2026-08-15 10:15:04 +01:00
The keybinding path of git.openChange, git.openFile and git.openHEADFile resolves the target through getSCMResource, which only considered window.activeTextEditor. That is undefined when a notebook editor is active, so the commands silently did nothing for notebooks while the editor-title buttons and SCM context menu (which pass the resource) kept working. Resolve the notebook uri from window.activeNotebookEditor first, and fall back to a notebook diff editor's modified resource so Open File can toggle back from an open notebook diff, matching the text-editor behavior. Fixes #176401
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);Note: To ensure that the
vscode.gitextension is activated before your extension, addextensionDependencies(docs) into thepackage.jsonof your extension:"extensionDependencies": [ "vscode.git" ]