tkellogg/dura

You shouldn't ever lose your work if you're using Git

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 31 minutes ago
Type:CLI ToolCategory(s):Git & Version ControlDeveloper Tools
Added to GitGenius on September 15th, 2026
Created on December 31st, 2021
Open Issues & Pull Requests: 23 (+0)
GitHub issues: Enabled
Number of forks: 69
Total Stargazers: 4,432 (+0)
Total Subscribers: 25 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1.0 hours
Mean response time: 11.7 hours
90th percentile: 34.0 hours
Tracked items: 6

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,324 days
Stale 30+ days: 2
Stale 90+ days: 2

Recent activity

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

Top labels

  • stability (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Dura is a background process that automatically snapshots uncommitted changes in Git repositories to prevent work loss.

The tool solves the problem of losing work due to crashes, force-resets, or accidental operations by running as a daemon that periodically commits your uncommitted changes to hidden branches without affecting your current HEAD, working branch, or staged files. When you need to recover work, you can checkout a dura branch and inspect the history to find the state you want to restore. This approach lets you revert to a specific point in time across your entire repository rather than relying on editor undo functionality, which only works within individual files and is lost when applications crash.

Dura suits developers who work in repositories where losing uncommitted progress would be costly and who want automatic protection without changing their existing Git workflow. The tool requires manual setup per repository through a watch command, though it can be automated across existing repositories with a shell command. Once running, it operates transparently—you continue using Git normally while dura maintains its own branch history in the background. Recovery involves checking out a dura branch by its commit hash and using standard Git tools like git log to find the desired state.

The project shows consistent maintenance with regular commits addressing bug fixes and feature improvements. Development activity includes responsiveness to user-reported issues and ongoing refinement of core functionality. The tool remains actively developed with attention to both stability and usability enhancements.