]> juplo.de Git - demos/kafka/training/commitdiff
BRANCHES.sh: __ROOT-Variablen entfernt, 3 fehlende Branches in Iterationsliste ergänz...
authorKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 29 May 2026 22:58:12 +0000 (22:58 +0000)
committerKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 29 May 2026 22:58:12 +0000 (22:58 +0000)
BRANCHES.sh
CLAUDE.md

index 5ef126e86659ba4f3a557986bc85d7bf89f4bc9d..3fbee2517dc70b20db683fc14fcfc49a9b7e828b 100755 (executable)
 set -e
 
 grundlagen__docker=grundlagen/docker
-grundlagen__docker__ROOT=grundlagen/docker
 config__flawed_setup__zookeeper=config/flawed-setup--zookeeper
-config__flawed_setup__zookeeper__ROOT=grundlagen/docker
 producer__batch_size__vorlage=producer/batch-size--vorlage
-producer__batch_size__vorlage__ROOT=grundlagen/docker
 grundlagen__simple_producer=grundlagen/simple-producer
-grundlagen__simple_producer__ROOT=grundlagen/docker
 grundlagen__simple_producer__vorlage=grundlagen/simple-producer--vorlage
-grundlagen__simple_producer__livecoding__ROOT=grundlagen/simple-producer
 grundlagen__simple_producer__livecoding=grundlagen/simple-producer--livecoding
-grundlagen__simple_producer__livecoding__schritte__ROOT=grundlagen/simple-producer--livecoding
 grundlagen__simple_producer__livecoding__schritte=grundlagen/simple-producer--livecoding--schritte
-grundlagen__simple_producer__vorlage__ROOT=grundlagen/simple-producer
 grundlagen__simple_producer__image__vorlage=grundlagen/simple-producer--image--vorlage
-grundlagen__simple_producer__image__vorlage__ROOT=grundlagen/simple-producer
 grundlagen__simple_producer__fire_forget__vorlage=grundlagen/simple-producer--fire+forget--vorlage
-grundlagen__simple_producer__fire_forget__vorlage__ROOT=grundlagen/simple-producer--image--vorlage
 grundlagen__simple_producer__completablefuture=grundlagen/simple-producer--completablefuture
-grundlagen__simple_producer__completablefuture__ROOT=grundlagen/simple-producer
 producer__simple_producer__auditheaders=producer/simple-producer--auditheaders
-producer__simple_producer__auditheaders__ROOT=grundlagen/simple-producer
-producer__spring_producer=producer/spring-producer
 producer__simple_producer__delivery_timeout=producer/simple-producer--delivery-timeout
-producer__simple_producer__delivery_timeout__ROOT=grundlagen/simple-producer
-producer__spring_producer__ROOT=grundlagen/simple-producer
+producer__spring_producer=producer/spring-producer
 producer__spring_producer__vorlage=producer/spring-producer--vorlage
-producer__spring_producer__vorlage__ROOT=producer/spring-producer
 producer__spring_producer__fixedsharding=producer/spring-producer--fixedsharding
-producer__spring_producer__fixedsharding__ROOT=producer/spring-producer
 producer__spring_producer__fixedsharding__vorlage=producer/spring-producer--fixedsharding--vorlage
-producer__spring_producer__fixedsharding__vorlage__ROOT=producer/spring-producer--fixedsharding
 producer__spring_producer__delivery_timeout=producer/spring-producer--delivery-timeout
-producer__spring_producer__delivery_timeout__ROOT=producer/spring-producer
 producer__spring_producer__delivery_timeout__vorlage=producer/spring-producer--delivery-timeout--vorlage
-producer__spring_producer__delivery_timeout__vorlage__ROOT=producer/spring-producer--delivery-timeout
 producer__spring_producer__backpressure=producer/spring-producer--backpressure
-producer__spring_producer__backpressure__ROOT=producer/spring-producer--delivery-timeout
 producer__spring_producer__backpressure__vorlage=producer/spring-producer--backpressure--vorlage
-producer__spring_producer__backpressure__vorlage__ROOT=producer/spring-producer--backpressure
 producer__spring_producer__auditheaders=producer/spring-producer--auditheaders
-producer__spring_producer__auditheaders__ROOT=producer/spring-producer--backpressure
 producer__spring_producer__auditheaders__vorlage=producer/spring-producer--auditheaders--vorlage
-producer__spring_producer__auditheaders__vorlage__ROOT=producer/spring-producer--auditheaders
 producer__spring_producer__generics=producer/spring-producer--generics
-producer__spring_producer__generics__ROOT=producer/spring-producer
 producer__rest_producer=producer/rest-producer
-producer__rest_producer__ROOT=producer/spring-producer
 springkafka__spring_producer__livecoding=springkafka/spring-producer--livecoding
-springkafka__spring_producer__livecoding__ROOT=producer/spring-producer
 springkafka__spring_producer__livecoding__schritte=springkafka/spring-producer--livecoding--schritte
-springkafka__spring_producer__livecoding__schritte__ROOT=springkafka/spring-producer--livecoding
 springkafka__spring_producer=springkafka/spring-producer
-springkafka__spring_producer__ROOT=producer/spring-producer
 springkafka__spring_producer__json=springkafka/spring-producer--json
-springkafka__spring_producer__json__ROOT=springkafka/spring-producer
 springkafka__spring_producer__json__vorlage=springkafka/spring-producer--json--vorlage
-springkafka__spring_producer__json__vorlage__ROOT=springkafka/spring-producer--json
 springkafka__spring_producer__json__messages=springkafka/spring-producer--json--messages
-springkafka__spring_producer__json__messages__ROOT=springkafka/spring-producer--json
 springkafka__spring_producer__json__messages__vorlage=springkafka/spring-producer--json--messages--vorlage
-springkafka__spring_producer__json__messages__vorlage__ROOT=springkafka/spring-producer--json--messages
 springkafka__spring_producer__messageconverter=springkafka/spring-producer--messageconverter
-springkafka__spring_producer__messageconverter__ROOT=springkafka/spring-producer--json
 springkafka__spring_producer__kafkatemplate=springkafka/spring-producer--kafkatemplate
-springkafka__spring_producer__kafkatemplate__ROOT=springkafka/spring-producer
 springkafka__spring_producer__kafkatemplate__vorlage=springkafka/spring-producer--kafkatemplate--vorlage
-springkafka__spring_producer__kafkatemplate__vorlage__ROOT=springkafka/spring-producer--kafkatemplate
 springkafka__technik_check__vorlage=springkafka/technik-check--vorlage
-springkafka__technik_check__vorlage__ROOT=springkafka/spring-producer--kafkatemplate
 springkafka__supersimple_producer=springkafka/supersimple-producer
-springkafka__supersimple_producer__ROOT=producer/spring-producer
 springkafka__supersimple_producer__vorlage=springkafka/supersimple-producer--vorlage
-springkafka__supersimple_producer__vorlage__ROOT=springkafka/supersimple-producer
 grundlagen__simple_consumer=grundlagen/simple-consumer
-grundlagen__simple_consumer__ROOT=grundlagen/simple-producer
 grundlagen__simple_consumer__vorlage=grundlagen/simple-consumer--vorlage
-grundlagen__simple_consumer__vorlage__ROOT=grundlagen/simple-consumer
 grundlagen__simple_consumer__livecoding=grundlagen/simple-consumer--livecoding
-grundlagen__simple_consumer__livecoding__schritte__ROOT=grundlagen/simple-consumer--livecoding
 grundlagen__simple_consumer__livecoding__schritte=grundlagen/simple-consumer--livecoding--schritte
-grundlagen__simple_consumer__livecoding__ROOT=grundlagen/simple-consumer
 grundlagen__simple_consumer__image__vorlage=grundlagen/simple-consumer--image--vorlage
-grundlagen__simple_consumer__image__vorlage__ROOT=grundlagen/simple-consumer
 consumer__simple_consumer__megagroup__vorlage=consumer/simple-consumer--megagroup--vorlage
-consumer__simple_consumer__megagroup__vorlage__ROOT=grundlagen/simple-consumer
 consumer__spring_consumer__livecoding=consumer/spring-consumer--livecoding
-consumer__spring_consumer__livecoding__ROOT=grundlagen/simple-consumer
 consumer__spring_consumer__livecoding__schritte=consumer/spring-consumer--livecoding--schritte
-consumer__spring_consumer__livecoding__schritte__ROOT=consumer/spring-consumer--livecoding
 consumer__spring_consumer=consumer/spring-consumer
-consumer__spring_consumer__ROOT=grundlagen/simple-consumer
 consumer__spring_consumer__vorlage=consumer/spring-consumer--vorlage
-consumer__spring_consumer__vorlage__ROOT=consumer/spring-consumer
-consumer__nodlt__ROOT=consumer/spring-consumer
 consumer__nodlt=consumer/nodlt
-springkafka__spring_consumer__json=springkafka/spring-consumer--json
-springkafka__spring_consumer__json__ROOT=consumer/spring-consumer
-springkafka__spring_consumer__json__vorlage=springkafka/spring-consumer--json--vorlage
-springkafka__spring_consumer__json__vorlage__ROOT=springkafka/spring-consumer--json
-springkafka__sumup_messages__vorlage=springkafka/sumup-messages--vorlage
-springkafka__sumup_messages__vorlage__ROOT=springkafka/spring-consumer--json
-springkafka__spring_consumer__json__messages=springkafka/spring-consumer--json--messages
-springkafka__spring_consumer__json__messages__ROOT=springkafka/spring-consumer--json
-springkafka__spring_consumer__json__messages__vorlage=springkafka/spring-consumer--json--messages--vorlage
-springkafka__spring_consumer__json__messages__vorlage__ROOT=springkafka/spring-consumer--json--messages
-springkafka__spring_consumer__kafkahandler=springkafka/spring-consumer--kafkahandler
-springkafka__spring_consumer__kafkahandler__ROOT=springkafka/spring-consumer--json
-springkafka__spring_consumer__messageconverter=springkafka/spring-consumer--messageconverter
-springkafka__spring_consumer__messageconverter__ROOT=springkafka/spring-consumer--kafkahandler
-springkafka__spring_consumer__messageconverter__dlt=springkafka/spring-consumer--messageconverter--dlt
-springkafka__spring_consumer__messageconverter__dlt__ROOT=springkafka/spring-consumer--messageconverter
-springkafka__supersimple_consumer=springkafka/supersimple-consumer
-springkafka__supersimple_consumer__ROOT=consumer/spring-consumer
-springkafka__supersimple_consumer__vorlage=springkafka/supersimple-consumer--vorlage
-springkafka__supersimple_consumer__vorlage__ROOT=springkafka/supersimple-consumer
-springkafka__spring_consumer__kafkalistener=springkafka/spring-consumer--kafkalistener
-springkafka__spring_consumer__kafkalistener__ROOT=consumer/spring-consumer
-springkafka__spring_consumer__kafkalistener__concurrency=springkafka/spring-consumer--kafkalistener--concurrency
-springkafka__spring_consumer__kafkalistener__concurrency__ROOT=springkafka/spring-consumer--kafkalistener
-springkafka__spring_producer__long=springkafka/spring-producer--long
-springkafka__spring_producer__long__ROOT=springkafka/spring-producer
-springkafka__spring_producer__long__vorlage=springkafka/spring-producer--long--vorlage
-springkafka__spring_producer__long__vorlage__ROOT=springkafka/spring-producer--long
 consumer__spring_consumer__logic_error=consumer/spring-consumer--logic-error
-consumer__spring_consumer__logic_error__ROOT=consumer/spring-consumer
 consumer__spring_consumer__logic_error__vorlage=consumer/spring-consumer--logic-error--vorlage
-consumer__spring_consumer__logic_error__vorlage__ROOT=consumer/spring-consumer--logic-error
 consumer__spring_consumer__long=consumer/spring-consumer--long
-consumer__spring_consumer__long__ROOT=consumer/spring-consumer
 consumer__spring_consumer__deserialization_error=consumer/spring-consumer--deserialization-error
-consumer__spring_consumer__deserialization_error__ROOT=consumer/spring-consumer--long
 consumer__spring_consumer__deserialization_error__vorlage=consumer/spring-consumer--deserialization-error--vorlage
-consumer__spring_consumer__deserialization_error__vorlage__ROOT=consumer/spring-consumer--deserialization-error
 consumer__spring_consumer__seek=consumer/spring-consumer--seek
-consumer__spring_consumer__seek__ROOT=consumer/spring-consumer
 consumer__spring_consumer__seek__vorlage=consumer/spring-consumer--seek--vorlage
-consumer__spring_consumer__seek__vorlage__ROOT=consumer/spring-consumer--seek
 consumer__spring_consumer__assign=consumer/spring-consumer--assign
-consumer__spring_consumer__assign__ROOT=consumer/spring-consumer
 consumer__spring_consumer__assign__vorlage=consumer/spring-consumer--assign--vorlage
-consumer__spring_consumer__assign__vorlage__ROOT=consumer/spring-consumer--assign
 consumer__spring_consumer__rebalance_listener=consumer/spring-consumer--rebalance-listener
-consumer__spring_consumer__rebalance_listener__ROOT=consumer/spring-consumer
 consumer__spring_consumer__rebalance_listener__vorlage=consumer/spring-consumer--rebalance-listener--vorlage
-consumer__spring_consumer__rebalance_listener__vorlage__ROOT=consumer/spring-consumer--rebalance-listener
 consumer__spring_consumer__log_compaction=consumer/spring-consumer--log-compaction
-consumer__spring_consumer__log_compaction__ROOT=consumer/spring-consumer--rebalance-listener
 consumer__spring_consumer__generics=consumer/spring-consumer--generics
-consumer__spring_consumer__generics__ROOT=consumer/spring-consumer
 consumer__spring_consumer__record_handler=consumer/spring-consumer--record-handler
-consumer__spring_consumer__record_handler__ROOT=consumer/spring-consumer--generics
 consumer__spring_consumer__health_indicator=consumer/spring-consumer--health-indicator
-consumer__spring_consumer__health_indicator__ROOT=consumer/spring-consumer--record-handler
 consumer__spring_consumer__error_handling=consumer/spring-consumer--error-handling
-consumer__spring_consumer__error_handling__ROOT=consumer/spring-consumer--record-handler
+springkafka__spring_consumer__json=springkafka/spring-consumer--json
+springkafka__spring_consumer__json__vorlage=springkafka/spring-consumer--json--vorlage
+springkafka__sumup_messages__vorlage=springkafka/sumup-messages--vorlage
+springkafka__spring_consumer__json__messages=springkafka/spring-consumer--json--messages
+springkafka__spring_consumer__json__messages__vorlage=springkafka/spring-consumer--json--messages--vorlage
+springkafka__spring_consumer__kafkahandler=springkafka/spring-consumer--kafkahandler
+springkafka__spring_consumer__messageconverter=springkafka/spring-consumer--messageconverter
+springkafka__spring_consumer__messageconverter__dlt=springkafka/spring-consumer--messageconverter--dlt
+springkafka__supersimple_consumer=springkafka/supersimple-consumer
+springkafka__supersimple_consumer__vorlage=springkafka/supersimple-consumer--vorlage
+springkafka__spring_consumer__kafkalistener=springkafka/spring-consumer--kafkalistener
+springkafka__spring_consumer__kafkalistener__concurrency=springkafka/spring-consumer--kafkalistener--concurrency
 springkafka__spring_consumer__kafkalistener__logic_error=springkafka/spring-consumer--kafkalistener--logic-error
-springkafka__spring_consumer__kafkalistener__logic_error__ROOT=springkafka/spring-consumer--kafkalistener
 springkafka__spring_consumer__kafkalistener__long=springkafka/spring-consumer--kafkalistener--long
-springkafka__spring_consumer__kafkalistener__long__ROOT=springkafka/spring-consumer--kafkalistener
 springkafka__spring_consumer__kafkalistener__long__deserialization_error=springkafka/spring-consumer--kafkalistener--long--deserialization-error
-springkafka__spring_consumer__kafkalistener__long__deserialization_error__ROOT=springkafka/spring-consumer--kafkalistener--long
 springkafka__spring_consumer__kafkalistener__long__dlt=springkafka/spring-consumer--kafkalistener--long--dlt
-springkafka__spring_consumer__kafkalistener__long__dlt__ROOT=springkafka/spring-consumer--kafkalistener--long--deserialization-error
+springkafka__spring_producer__long=springkafka/spring-producer--long
+springkafka__spring_producer__long__vorlage=springkafka/spring-producer--long--vorlage
 
 BRANCHES="\
   producer__batch_size__vorlage \
@@ -199,7 +117,9 @@ BRANCHES="\
   springkafka__spring_producer__messageconverter \
   springkafka__spring_producer__kafkatemplate \
   springkafka__spring_producer__kafkatemplate__vorlage \
+  springkafka__technik_check__vorlage \
   springkafka__supersimple_producer \
+  springkafka__supersimple_producer__vorlage \
   grundlagen__simple_consumer \
   grundlagen__simple_consumer__vorlage \
   grundlagen__simple_consumer__livecoding \
@@ -211,20 +131,6 @@ BRANCHES="\
   consumer__spring_consumer \
   consumer__spring_consumer__vorlage \
   consumer__nodlt \
-  springkafka__spring_consumer__json \
-  springkafka__spring_consumer__json__vorlage \
-  springkafka__sumup_messages__vorlage \
-  springkafka__spring_consumer__json__messages \
-  springkafka__spring_consumer__json__messages__vorlage \
-  springkafka__spring_consumer__kafkahandler \
-  springkafka__spring_consumer__messageconverter \
-  springkafka__spring_consumer__messageconverter__dlt \
-  springkafka__supersimple_consumer \
-  springkafka__supersimple_consumer__vorlage \
-  springkafka__spring_consumer__kafkalistener \
-  springkafka__spring_consumer__kafkalistener__concurrency \
-  springkafka__spring_producer__long \
-  springkafka__spring_producer__long__vorlage \
   consumer__spring_consumer__logic_error \
   consumer__spring_consumer__logic_error__vorlage \
   consumer__spring_consumer__long \
@@ -233,6 +139,7 @@ BRANCHES="\
   consumer__spring_consumer__seek \
   consumer__spring_consumer__seek__vorlage \
   consumer__spring_consumer__assign \
+  consumer__spring_consumer__assign__vorlage \
   consumer__spring_consumer__rebalance_listener \
   consumer__spring_consumer__rebalance_listener__vorlage \
   consumer__spring_consumer__log_compaction \
@@ -240,8 +147,22 @@ BRANCHES="\
   consumer__spring_consumer__record_handler \
   consumer__spring_consumer__health_indicator \
   consumer__spring_consumer__error_handling \
+  springkafka__spring_consumer__json \
+  springkafka__spring_consumer__json__vorlage \
+  springkafka__sumup_messages__vorlage \
+  springkafka__spring_consumer__json__messages \
+  springkafka__spring_consumer__json__messages__vorlage \
+  springkafka__spring_consumer__kafkahandler \
+  springkafka__spring_consumer__messageconverter \
+  springkafka__spring_consumer__messageconverter__dlt \
+  springkafka__supersimple_consumer \
+  springkafka__supersimple_consumer__vorlage \
+  springkafka__spring_consumer__kafkalistener \
+  springkafka__spring_consumer__kafkalistener__concurrency \
   springkafka__spring_consumer__kafkalistener__logic_error \
   springkafka__spring_consumer__kafkalistener__long \
   springkafka__spring_consumer__kafkalistener__long__deserialization_error \
   springkafka__spring_consumer__kafkalistener__long__dlt \
+  springkafka__spring_producer__long \
+  springkafka__spring_producer__long__vorlage \
   "
index 876f729a62bb69add62d207040eb21e3915f1156..647a0534191cd8668089dfcdc39be80926af8474 100644 (file)
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -24,7 +24,7 @@ Branch-Name-Präfixe gruppieren Übungen nach Thema:
 - `springkafka/*` — Spring-Kafka-API-Übungen
 - `config/*` — Docker/Infrastruktur-Konfigurationsbeispiele
 
-Jede Branch-Variable in `BRANCHES.sh` hat eine entsprechende `__ROOT`-Variable, die den Rebase-Elternbranch definiert — eine gerichtete Abhängigkeitskette von Übungen.
+Die Rebase-Elternbeziehungen (ROOTs) sind **ausschließlich** in der ROOT-Tabelle dieser `CLAUDE.md` festgehalten. `BRANCHES.sh` enthält nur noch die Branch-Namen und die Iterationsliste für Skripte — keine `__ROOT`-Variablen mehr.
 
 ### Branch-Hierarchie (vollständige ROOT-Tabelle)
 
@@ -219,11 +219,14 @@ Nach Massenoperationen immer zu `scripting` zurückkehren — Skripte führen am
 
 ## Einen neuen Übungs-Branch hinzufügen
 
-1. Variablenname und -wert (Branch-Name) in `BRANCHES.sh` eintragen.
-2. Entsprechende `__ROOT`-Variable hinzufügen, die auf den Eltern-Branch zeigt.
-3. Variablenname in die `BRANCHES`-Liste in `BRANCHES.sh` aufnehmen.
-4. `./REBASE.sh` ausführen, um die Konsistenz der Kette zu prüfen.
-5. `./PUSH.sh` ausführen, um zu veröffentlichen.
+Diese beiden Stellen müssen immer gemeinsam aktualisiert werden — sie halten unterschiedliche Informationen:
+
+**In `BRANCHES.sh`** (Branch-Name und Iterationsliste):
+1. Variablenname und -wert (Branch-Name) als neue Zeile eintragen.
+2. Variablenname in die `$BRANCHES`-Iterationsliste aufnehmen.
+
+**In dieser `CLAUDE.md`** (ROOT-Beziehung):
+3. Neuen Eintrag in der ROOT-Tabelle ergänzen (Abschnitt „Branch-Hierarchie").
 
 ## Commit-Konventionen