Skip to main content

Git Visual Timeline — a keyboard-driven TUI for exploring file commit history

Project description

gvt — Git Visual Timeline

A keyboard-driven TUI for exploring the commit history of any file in a git repo. Think lazygit meets a video timeline scrubber, focused on per-file history.

Install

pip install git-visual-timeline

Usage

# Open in any git repo
gvt

# Jump directly to a file
gvt path/to/file.py

Features

  • Visual timeline with heatmap-colored ticks (green=adds, red=deletes, amber=mixed)
  • Step-through mode — scrub one commit at a time to see what changed
  • Pin mode — press x to mark start/end and diff any two commits
  • Syntax-highlighted diffs with inline and whole-file views
  • Commit search (c) — fuzzy search all repo commits by message, branch name, or author, then drill into changed files
  • File search (f) — fzf-style file picker
  • Time filter (t) — filter timeline by date range (1w, 1m, 3m, custom date)
  • Inline blame (b) — right-aligned blame annotations
  • Contributor breakdown (B) — visual bar chart of who changed the file
  • WIP indicator — hollow tick showing uncommitted changes
  • 5-pane layout with numbered switching (1-5) and Ctrl+hjkl navigation
  • tmux integration — seamless pane switching at edges (add gvt to your is_vim regex)
  • Context-sensitive status bar showing relevant shortcuts per pane

Keybindings

Key Action
1-5 Jump to pane
Ctrl+h/j/k/l Navigate panes directionally
h/l Move timeline cursor
x Pin start/end commits
X Snap nearest pin to cursor
n/p Next/prev diff hunk
w Toggle whole-file view
b Toggle inline blame
B Contributor breakdown
c Search commits (all repo)
f Search files
t Time filter
+/- More/less diff context
? Help
q Quit (with confirmation)
qq Quit immediately

Requirements

  • Python 3.10+
  • A git repository

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

git_visual_timeline-0.1.0.tar.gz (29.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

git_visual_timeline-0.1.0-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file git_visual_timeline-0.1.0.tar.gz.

File metadata

  • Download URL: git_visual_timeline-0.1.0.tar.gz
  • Upload date:
  • Size: 29.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for git_visual_timeline-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a9c3920f23c03b49b3f4e7b8020beefc2392bbf13f8908c23ec5096873bb267c
MD5 6aa3f455d820acbc92b7028aaf569c26
BLAKE2b-256 a88ea40bb36b5407fb719c0c18f24248f1a67d810251b780c2df397eeae51e8e

See more details on using hashes here.

File details

Details for the file git_visual_timeline-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for git_visual_timeline-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1a8b6cdbf776a2f932c6ee97f668500df3b42d42e3dc4886dc79da823940ef0c
MD5 6315652c750ec6d6c4d07c6d7a644f31
BLAKE2b-256 84694e9200b9650c6ad84aac8fb50a2fec44139ea192569ef8db9cd05cc261b2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page