fix: restore-all.sh bewahrt PROTOKOLL.md standardmäßig
Neues Flag --reset-protokoll für expliziten Reset auf leere Templates. Ohne Flag bleiben ausgefüllte Protokolle erhalten. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
c6f2f1f8e0
commit
a86d8b39ad
1 changed files with 26 additions and 3 deletions
|
|
@ -2,11 +2,20 @@
|
||||||
# Stellt den Ausgangszustand aller Examples wieder her.
|
# Stellt den Ausgangszustand aller Examples wieder her.
|
||||||
# Löscht erzeugte Sub-Repos, restauriert Quelldateien aus dem Haupt-Repo
|
# Löscht erzeugte Sub-Repos, restauriert Quelldateien aus dem Haupt-Repo
|
||||||
# und bereinigt Build-Artefakte.
|
# und bereinigt Build-Artefakte.
|
||||||
|
#
|
||||||
|
# Optionen:
|
||||||
|
# --reset-protokoll Setzt auch PROTOKOLL.md auf leere Templates zurück.
|
||||||
|
# Standard: PROTOKOLL.md bleibt unangetastet.
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
ROOT="$(git -C "$(dirname "$0")" rev-parse --show-toplevel)"
|
ROOT="$(git -C "$(dirname "$0")" rev-parse --show-toplevel)"
|
||||||
EXAMPLES="$ROOT/examples"
|
EXAMPLES="$ROOT/examples"
|
||||||
|
RESET_PROTOKOLL=false
|
||||||
|
|
||||||
|
for arg in "$@"; do
|
||||||
|
[ "$arg" = "--reset-protokoll" ] && RESET_PROTOKOLL=true
|
||||||
|
done
|
||||||
|
|
||||||
echo "Stelle Examples-Ausgangszustand wieder her..."
|
echo "Stelle Examples-Ausgangszustand wieder her..."
|
||||||
|
|
||||||
|
|
@ -16,8 +25,17 @@ for dir in python-calculator rust-wordcount go-fibonacci c-linkedlist; do
|
||||||
rm -rf "$path/.git"
|
rm -rf "$path/.git"
|
||||||
echo " ✓ Sub-Repo entfernt: $dir"
|
echo " ✓ Sub-Repo entfernt: $dir"
|
||||||
fi
|
fi
|
||||||
git -C "$ROOT" checkout -- "examples/$dir/"
|
# Quelldateien restaurieren — PROTOKOLL.md standardmäßig ausnehmen
|
||||||
echo " ✓ Dateien restauriert: $dir"
|
while IFS= read -r file; do
|
||||||
|
git -C "$ROOT" checkout -- "$file"
|
||||||
|
done < <(git -C "$ROOT" ls-files "examples/$dir/" \
|
||||||
|
| grep -v '/PROTOKOLL\.md$')
|
||||||
|
if $RESET_PROTOKOLL; then
|
||||||
|
git -C "$ROOT" checkout -- "examples/$dir/PROTOKOLL.md"
|
||||||
|
echo " ✓ Dateien restauriert: $dir (inkl. PROTOKOLL.md)"
|
||||||
|
else
|
||||||
|
echo " ✓ Dateien restauriert: $dir (PROTOKOLL.md behalten)"
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Build-Artefakte und pi-coder-Laufzeitartefakte bereinigen
|
# Build-Artefakte und pi-coder-Laufzeitartefakte bereinigen
|
||||||
|
|
@ -29,4 +47,9 @@ find "$EXAMPLES" -name "TASK.md" -delete 2>/dev/null || true
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "Fertig. Alle Examples sind im Ausgangszustand."
|
echo "Fertig. Alle Examples sind im Ausgangszustand."
|
||||||
echo "git status zeigt examples/ als clean (wenn kein PROTOKOLL.md verändert wurde)."
|
if $RESET_PROTOKOLL; then
|
||||||
|
echo "PROTOKOLL.md-Dateien wurden auf leere Templates zurückgesetzt."
|
||||||
|
else
|
||||||
|
echo "PROTOKOLL.md-Dateien wurden nicht verändert."
|
||||||
|
echo "Für leere Templates: $0 --reset-protokoll"
|
||||||
|
fi
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue