mbbill/undotree

The undo history visualizer for VIM

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 34 minutes ago
Type:Plugin / ExtensionCategory(s):Editors & IDEsDeveloper Tools
Added to GitGenius on September 15th, 2026
Created on August 18th, 2012
Open Issues & Pull Requests: 44 (+0)
GitHub issues: Enabled
Number of forks: 118
Total Stargazers: 4,544 (+0)
Total Subscribers: 30 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 11.8 hours
Mean response time: 23.9 days
90th percentile: 25.0 days
Tracked items: 14

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 12
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 778 days
Stale 30+ days: 12
Stale 90+ days: 11

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (3)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Undotree is a Vim plugin that visualizes the undo history and allows users to browse and switch between different undo branches.

Vim stores the entire edit history as a tree structure rather than a linear sequence, which means that undoing a change and then making a new edit does not discard the original branch. Most editors lose that history, but Vim preserves it. Undotree exposes this tree visually so you can navigate between diverging branches of edits. The plugin modifies the buffer temporarily to switch between states without writing to disk, making all changes reversible with a single action.

Undotree suits developers and writers who work with Vim and want to recover from complex editing sequences where they have undone changes and then made new edits. It is particularly valuable for those who want to explore multiple editing paths without losing work. The plugin works within Vim's native undo system and does not replace it; users can optionally enable Vim's persistent undo feature to save undo history across sessions.

The project receives occasional maintenance and bug fixes. Development activity shows responsiveness to user-reported issues and pull requests.