Sidereal for Git
A fast Git commit graph for VS Code, inspired by TortoiseGit's log view, with branches, tags, stashes, worktrees and submodules in one place.
Features
- Commit graph in the bottom panel or in editor tabs, one per repository. Commits stream in as they load, and scrolling stays smooth past 100,000 commits.
- Commit details beside or below the list: changed files, diffs, file history, blame and patches.
- Git actions through VS Code's own prompts: checkout, branch, merge, rebase (including interactive), cherry-pick, revert, reset, tag, stash, notes, push, pull and fetch.
- Filters: message, author, path, SHA, refs, date range and revision range. Collapse runs of commits and jump between merges.
- Worktrees: see which branches other worktrees have checked out, create a worktree from any branch or commit, and open it in a new window or its own Sidereal tab.
- Submodules: nested under their parent repository. A pointer change shows its commit range and opens the submodule's history for it in the submodule's own tab.
- Follows your VS Code theme, and the repositories shown in Source Control.
Getting started
Run Sidereal: Open Sidereal View from the Command Palette, or click a branch in the Sidereal sidebar, which lists branches, remotes, tags, stashes, worktrees and submodules. The graph opens in an editor tab; set Sidereal: Open In to Panel to open it in the bottom panel instead.
Tabs and repositories
- Each repository gets one tab: opening a repository that has a tab reveals it. Open in New Tab is on each repository in the Repo dropdown, on repository nodes in the sidebar, and in the Command Palette (Sidereal: Open Repository in New Tab).
- Picking a repository in a tab's Repo dropdown switches that tab, unless another tab already shows it: that tab is revealed instead.
- Sidebar actions (show a branch, file history, fetch) go to the tab showing their repository, else the most recently used tab.
- Tabs are titled by how their repository relates to the workspace:
app, app › lib (submodule), app [feature] (linked worktree), tool (external). They reopen after a restart.
- The Repo dropdown groups repositories by workspace folder, then external ones, with submodules and worktrees nested under their repository.
- Add Git Repository... accepts any folder in a Git repository, also outside the workspace; it stays listed until removed.
- With Open In set to Panel, the panel works as before: submodules open in it, and Open in New Tab still opens tabs.
Requires Git 2.33 or later.
Settings
| Setting |
Default |
Description |
sidereal.openIn |
Editor Tab |
Where the graph opens: Editor Tab or Panel (the bottom panel). |
sidereal.graph.branchColors |
theme colors |
Colors of the graph's branch lines. |
sidereal.referenceLabels.showAheadBehind |
true |
Show how far each branch is ahead of or behind its upstream. |
sidereal.commitDetails.describe |
All Tags |
Which references describe a commit in its details. |
sidereal.documents.editorGroup |
Active |
Editor group for files and diffs opened from Sidereal. |
sidereal.repository.searchDepth |
0 |
Subfolder depth searched for repositories when VS Code's Git extension is off. |
License
Proprietary. See LICENSE.txt and ThirdPartyNotices.txt in the extension's folder.
| |