---
name: feedback_git_add_all_race
description: git add -A peut échouer sur les .tmp.* volatils de .claude/ — commiter des fichiers ciblés
metadata:
  type: feedback
---

`git add -A` dans ce repo peut échouer au commit avec `fatal: unable to stat '.claude/settings.local.json.tmp.XXXX': No such file or directory` — le harness Claude Code réécrit `settings.local.json` de façon atomique (crée un `.tmp.*` puis renomme), et git attrape le fichier temporaire juste avant qu'il disparaisse.

**Why:** course entre `git add -A` (qui scanne `.claude/`) et le renommage atomique. Le `.gitignore` couvre désormais `.claude/`, `memory/` et `*.tmp.*` (commit `ae15ed7`), ce qui évite le problème — mais la garde reste utile.

**How to apply:** Préférer commiter des fichiers **explicitement nommés** (`git add public/x.php lib/y.php`) plutôt que `git add -A`. Si un `git add -A` échoue avec cette erreur, refaire `git reset` puis `git add <fichiers ciblés>`. Rappel workflow projet : toujours commit **puis** `bash ~/sync.sh dhcpman`.
