]> juplo.de Git - demos/kafka/training/commitdiff
CLAUDE.md: ROOT-Lookup aus BRANCHES.sh → CLAUDE.md; vollständiges Session-Tagging
authorKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 29 May 2026 18:53:58 +0000 (18:53 +0000)
committerKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 29 May 2026 18:53:58 +0000 (18:53 +0000)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CLAUDE.md

index 67a08a9383abca018a063c276ea11fcf2c083b3d..9b6355e472cdf43357a38606c57d8089fa80fde1 100644 (file)
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -327,16 +327,9 @@ Image-Name muss immer `juplo/<artifactId>:<version>` (Maven) oder `juplo/${proje
 
 ### ROOT eines Branches ermitteln
 
-Der ROOT jedes Branches ist in `BRANCHES.sh` (auf dem `scripting`-Branch) als `<variable>__ROOT`-Variable definiert. **Vor jedem Rebase** den ROOT nachschlagen:
+Der ROOT jedes Branches steht in der **ROOT-Tabelle in dieser `CLAUDE.md`** (Abschnitt „Branch-Hierarchie"). **Vor jedem Rebase dort nachschlagen** — nicht in `BRANCHES.sh` greifen, da die Tabelle hier bereits vollständig und geprüft ist.
 
-```bash
-git checkout scripting
-grep "^<variante>__ROOT" BRANCHES.sh
-# oder: alle ROOTs auflisten
-grep "__ROOT=" BRANCHES.sh
-```
-
-Alternativ lässt sich der ROOT auch aus dem `--claude-N`-Tag ableiten:
+Als Gegencheck lässt sich der ROOT auch aus dem `--claude-N`-Tag ableiten:
 ```bash
 git log --oneline -3 <branch>--claude-N
 # Die letzten Commits zeigen, welcher Eltern-Branch vorausgeht
@@ -409,6 +402,17 @@ Wandelt ein Branch die Anwendung in eine **reine Java-Bibliothek** um (keine Spr
 
 Jede Rebase-Session taggt jeden abgeschlossenen Branch als `<branch>--claude-N`. Die Tag-Nummer erhöht sich pro Session. Tags dienen als Wiederherstellungspunkte — `./RESET.sh claude-N` setzt alle Branches auf die entsprechenden Tags zurück. Immer direkt nach Abschluss eines Branches taggen, bevor mit dem nächsten begonnen wird.
 
+**Am Ende jeder Session: alle Branches taggen** — auch solche, die sich in dieser Session nicht geändert haben. Branches ohne neue Änderungen erhalten ein `--claude-N`-Tag auf demselben Commit wie ihr `--claude-(N-1)`-Tag:
+```bash
+for tag_prev in $(git tag | grep -- '--claude-N$'); do
+  tag_new="${tag_prev%--claude-(N-1)}--claude-N"
+  if ! git tag | grep -qxF "$tag_new"; then
+    git tag "$tag_new" "$(git rev-list -1 "$tag_prev")"
+  fi
+done
+```
+*(N durch die aktuelle Session-Nummer ersetzen.)*
+
 ## Wesentliche Einschränkungen
 
 - `PUSH.sh` force-pusht — das ist für diesen Schulungsworkflow absichtlich und erwartet.