Why Git Commits Don't Work for AI Iteration
Git commits require discipline that breaks down during rapid AI coding. Here's why, and what to use instead.
The standard advice for AI coding is simple: commit before every AI operation. That way, if something breaks, you can revert.
In theory, this works. In practice, it doesn’t.
The Theory
The disciplined workflow looks like this:
git commit -am "checkpoint before AI refactor"
# Ask AI to do something
# Review the changes
git commit -am "AI: refactored auth module"
Safe. Clean. Recoverable.
The Reality
Here’s what actually happens when you’re coding with Cursor or Claude:
- You ask the AI to make a change
- It works, you keep going
- You ask for another change
- That works too
- You’re in flow now, iterating quickly
- The AI makes another change
- Something breaks
- You realize you haven’t committed in 20 minutes
You didn’t forget because you’re careless. Committing interrupts flow, and your brain optimizes to avoid interruptions.
When you’re iterating rapidly, trying different approaches and accepting suggestions, stopping to write commit messages feels like friction. So you skip it “just this once.” Then again. Then AI deletes half your files.
Why Discipline Fails
Git commits require three things:
- Decision: You have to decide it’s time to commit
- Action: You have to stage files and write a message
- Context switch: You have to think about what to say
During rapid AI iteration, all three create friction.
You don’t want to stop and think about commit messages when you’re testing whether an approach works. You want to keep moving. The AI is fast, and you want to keep up.
Interrupting flow has a real cost, and your brain naturally optimizes to avoid it.
The Checkpoint Commit Problem
Some developers try to solve this with low-effort checkpoint commits:
git commit -am "before AI"
git commit -am "WIP"
git commit -am "trying something"
git commit -am "another attempt"
This technically works for recovery. But it creates problems:
- Cluttered history: Your git log becomes noise
- Still requires discipline: You still have to remember to do it
- Breaks collaboration: These commits aren’t meaningful for teammates
And even with checkpoint commits, you still have gaps. The moment between one checkpoint and the next is unprotected.
A Different Approach
What if you didn’t have to decide when to save?
mrq takes a different approach. Instead of requiring commits, it captures every file change automatically:
mrq watch
Now every change is recorded. No decisions, no messages, no friction.
When AI breaks something:
mrq restore abc123
Back to any point, not just commits. Including the state from 30 seconds ago that you definitely wouldn’t have committed.
Git for History, Snapshots for Safety
You don’t need to abandon git. Git serves a different purpose than continuous protection.
| Purpose | Tool | When |
|---|---|---|
| Meaningful history | Git commits | When features are complete, before deployment |
| Continuous safety | Automatic snapshots | Always, during all iteration |
The workflow:
# Start session
mrq watch # Protection starts
# Iterate with AI
# No commits needed, everything captured
# Hit a real milestone
git commit -m "User auth complete" # Clean, meaningful
# Something broke earlier?
mrq restore abc123 # Recover any state
Your git history stays clean. Your intermediate states are all recoverable. You iterate as fast as AI allows.
The Key Insight
Git commits require discipline. Discipline breaks down during rapid iteration.
Automatic snapshots require no discipline. They just run.
The developers who work confidently with AI aren’t more disciplined about committing. They’ve set up protection that doesn’t require discipline.
Summary
Git commits don’t work for AI iteration because:
- They require decisions that interrupt flow
- Discipline fails when you’re iterating quickly
- Checkpoint commits clutter history without solving the problem
Automatic protection that runs without thinking solves this:
- mrq for continuous snapshots (every state recoverable)
- Git for intentional milestones (clean history)
Stop trying to be more disciplined. Set up protection that doesn’t require it.
Related Reading
- Git for AI Coding: What’s Missing - The gap in detail
- Git Alternatives for AI Coding - What else exists
- Backup Your Code Before Using AI - Complete protection guide
- How to Safely Use AI Coding Assistants - Full workflow
mrq captures every change automatically. No commits, no discipline, no gaps. Instant recovery when AI breaks things.
Written by mrq team