Commit Often to Create Rollback Points
When working on a long or complex task with Claude Code, it's easy to end up deep in a series of changes with no easy way back if something breaks. The fix is simple: ask Claude Code to commit after each logical step.
Add this instruction to your prompt or CLAUDE.md:
After completing each logical step, create a git commit with a clear message before moving on.
You can also ask mid-task:
Before you continue, commit what you've done so far with a descriptive message.
Claude Code can make a lot of changes quickly. Without checkpoints, a single bad step can leave you hunting through dozens of modifications to find where things went wrong. Committing often gives you a clean git history that documents Claude's progress step by step, lets you git reset --hard to any checkpoint, and makes code review easier since each commit represents a single coherent change.
For extra safety, ask Claude Code to work on a new branch before starting:
Create a new branch called feature/add-notifications before you begin.
That way your main branch stays untouched the entire time.
Think of commits as checkpoints — the more granular, the easier it is to undo a bad step without losing all your progress.
Log in to leave a comment.
The /security-review command scans your uncommitted changes for injection vectors, auth gaps, hardcoded secrets, and other common vulnerabilities.
The SessionStart hook fires when any session begins or resumes, making it ideal for loading environment variables and running one-time setup scripts.
Ask Claude to write property-based tests for your functions using fast-check — it identifies the mathematical invariants in your code and generates tests that cover inputs you'd never enumerate by hand.