See where your branches go.

git-sea is a fast, read-only Git history viewer for macOS and Linux. It lays out your commit graph as a node canvas, so you can see at a glance how branches split, merge and flow.

Free and open source · Universal build for Apple Silicon and Intel · .deb, .rpm and AppImage for Linux

Features

Built for reading history, not rewriting it.

git-sea never writes to your repositories. Open as many as you like, explore their history, and close them knowing nothing changed.

Node-canvas graph

Commits flow left to right on a dotted canvas with pan, zoom, pinch and fit. Nodes show the commit type, label, hash and ref badges.

Fast on large repos

The topological walk and the lane layout run in Rust and stream to the UI in chunks. A cached layout reopens in milliseconds.

Details and diffs

Metadata, clickable parents, changed files with rename detection, and unified or split diffs with syntax highlighting.

Live updates

Watches your repository and working copy, fetches remotes in the background and animates new commits as they arrive.

Search and command palette

Find commits by message, author or hash, filter the graph, and reach every action from the keyboard.

CI at a glance

See your GitHub Actions and GitLab CI workflows, their latest runs, and the commits where they would start.

Performance

Measured on nodejs/node.

About 49,000 commits on the main branch and 109,000 across all refs, on a MacBook, from a release build.

~300 msuntil the first rows of a fresh walk appear
13 msto reopen 49k commits from the layout cache
31 msto reopen 109k commits from the layout cache
Views

One history, four ways to look at it.

Every view is a projection of the same graph, so switching between them keeps your place and your selection.

Graph

Cards up close, tiles at medium zoom, dots far away.

×42 ×7 ×18

Topology

Linear runs fold into single nodes, leaving only the shape.

Timeline

Commits placed on real time, to see when work actually happened.

Minimap

The whole history in one strip, with your viewport on top.

Install

Get started.

macOS

Grab the .dmg from the latest release and drag git-sea to Applications. The app isn't notarized yet, so on first launch right-click it and choose Open, or run:

xattr -dr com.apple.quarantine /Applications/git-sea.app

Linux

The latest release has a .deb, an .rpm and an .AppImage for x86_64. Saving CI tokens uses the Secret Service (GNOME Keyring or KWallet).

# Debian, Ubuntu
sudo apt install ./git-sea_*_amd64.deb

# Fedora, openSUSE
sudo dnf install ./git-sea-*.x86_64.rpm

# anywhere else
chmod +x git-sea_*_amd64.AppImage
./git-sea_*_amd64.AppImage

Build from source

You need Rust (stable) and Node.js with pnpm, plus the Xcode Command Line Tools on macOS or the WebKitGTK packages on Linux.

# clone and run
git clone https://github.com/ehystiv/git-sea
cd git-sea
pnpm install
pnpm tauri dev

# release build
pnpm tauri build
Keyboard

Keep your hands on the keys.

On Linux, Ctrl takes the place of ⌘.

Next / previous commitjk
Parent / childhl
Toggle details↵
Go to HEADgh
Open a repository⌘O
Close tab⌘W
Switch tab⌘1–9
Tauri 2RustgitoxideReact 19TypeScriptCanvas 2D