Files
wiki/.claude/skills/gitsafety.md

1.7 KiB

Critical Git Safety Protocol

🚨 NEVER USE git checkout TO REVERT CHANGES 🚨

MANDATORY GIT SAFETY RULES:

  • NEVER run git checkout -- <file> without first examining what you're about to destroy
  • ALWAYS use git diff <file> to see exactly what changes will be lost
  • MANUALLY undo changes by editing files to revert specific problematic sections
  • Preserve valuable work — if user says changes are bad, ask which specific parts to revert
  • git checkout destroys ALL changes — this can eliminate hours of valuable progress
  • When user asks to "undo" changes: Read the current file, identify problematic sections, and manually edit to fix them

Why this matters: Using git checkout blindly can destroy sophisticated implementations, complex prompts, provider-specific logic, and other valuable work that took significant time to develop.

Git Safety Rules - CRITICAL

NEVER run these commands without explicit user approval:

  • git reset --hard - Destroys uncommitted changes permanently
  • git checkout -- . - Discards all working directory changes
  • git clean -fd - Deletes untracked files permanently
  • git stash drop - Deletes stashed changes

ALWAYS before any git operation:

  1. Run git status first to check for uncommitted changes
  2. If there are uncommitted changes, STOP and ASK the user before proceeding
  3. Suggest git stash to preserve changes if needed

If user asks to "revert" something:

  1. First clarify: revert committed changes or uncommitted changes?
  2. Show what will be affected before doing anything
  3. Get explicit confirmation for destructive operations

This rule exists because careless git operations destroyed 2 days of work.