Skip to content

Git Vertex VS Code Extension v1.34.0

Choose a tag to compare

@github-actions github-actions released this 12 Sep 23:16

Git Vertex VS Code Extension v1.34.0

Added

  • A reading density, compact or comfortable. Body text was 12–13px and metadata went down to 9 and 10px, and in a panel docked to the side of an editor that is where the room runs out first. Settings › Appearance › Density now offers two, each previewing itself. Comfortable is what the panel has always drawn, so nothing moves unless you ask. Compact takes away air, not letters: row heights come down (the graph from 28 to 24px, the whole list column from 26 to 22), the padding steps tighten, and the two body text sizes drop one step — while the smallest text does not move at all, because it was the thing that was too small in the first place. That one is fixed for everyone, at both densities: metadata that was 9 and 10px is 10 and 11px now. The graph re-reads the row heights out of the stylesheet and re-lays its nodes and edges, so the commits stay aligned with the text beside them.
  • Git's own caches, for repositories that need them — Settings › Behaviour › Speed up large repositories. Past a certain size the panel's own cost stops being the story: git status walks the working tree, and on NTFS behind a virus scanner walking a large one is seconds however few times it is asked. Git has an answer — core.fsmonitor, a daemon that watches the tree so status stops walking it — and it is off by default in every repository. Switching this on writes it, plus fetch.writeCommitGraph, into each repository the panel opens, and writes that repository a commit-graph. Off unless asked for, because it goes into the repository's own config and every git client on the machine reads it afterwards; the row names the keys, and git config --unset undoes it. A value you set yourself is never replaced, and nothing is written where git cannot support it.
  • On Windows, the settings say what the extension cannot fix. Defender's real-time protection inspects every file as it is opened, and git status on a large repository opens all of them — which is why the same repository with the same git is quick on one machine and slow on another. Excluding the folder your repositories live in routinely beats everything above put together. The note gives the one-line command, says what it does and does not cover and how to undo it, and copies rather than runs it: it changes the machine's security settings.

Changed

  • The panel stopped verifying a signature it never draws. %G? in the log query is not a field but a verification: git runs gpg once per signed commit on the page, and the graph has drawn no signature at all since 28/08/2026. Measured on the desktop's own repository, a 200-commit page was 580 ms with it and 150 ms without — and a repository whose merges all come from the GitHub button is signed on every row, so the whole page was paid for.
  • One git status per refresh instead of two. The conflict list and the working changes each asked for their own, which on a large working tree — and especially on NTFS behind a virus scanner — is the slowest read the panel makes, done twice. Readers that overlap in time now share the one in flight, which also stops two git processes rewriting .git/index at the same moment.
  • The branch list is one git process, and comes out of plumbing. It was git branch -a --verbose — text git writes for people, parsed with a regex — followed by a second call for ahead/behind. One for-each-ref answers both in fields, which also retires the repair that turned * (HEAD detached at 1a2b3c4) into a branch called (HEAD, and gives origin/HEAD a real hash where it used to show ->.
  • One implementation of a diff, shared with the desktop app. Reading a commit, comparing two refs, listing what a comparison touched, a working-tree diff, a stash's patch, a blame, a search through diffs: this extension and the desktop app each carried their own copy of all of it, and the copies had drifted — the desktop dated blame lines with the French calendar while this panel used 9/11/2026, same view, same method, two different dates. There is one implementation now, with each product keeping only its own way of reaching git. Nothing the panel produces was meant to change.
  • The graph a repository had last time is on screen before git answers. The panel draws the previous visit's graph in the first frame and replaces it when the real one lands; nothing is skipped and no answer comes from the cache. The working tree is deliberately not kept — a stale conflict banner is a wrong statement rather than a slightly old graph.

Installe le VSIX directement :

code --install-extension git-vertex-1.34.0.vsix

Ou cherche Git Vertex dans le Marketplace VS Code.

🔗 VS Code Marketplace
🔗 Open VSX