From: Kai Moritz Date: Fri, 29 May 2026 22:58:12 +0000 (+0000) Subject: BRANCHES.sh: __ROOT-Variablen entfernt, 3 fehlende Branches in Iterationsliste ergänz... X-Git-Tag: scripting--2026-06-04~51 X-Git-Url: http://juplo.de/gitweb/?a=commitdiff_plain;h=6cd8171c412fc02feb62cbc04a5338e7b3f160a7;p=demos%2Fkafka%2Ftraining BRANCHES.sh: __ROOT-Variablen entfernt, 3 fehlende Branches in Iterationsliste ergänzt; CLAUDE.md: Zuständigkeiten dokumentiert --- diff --git a/BRANCHES.sh b/BRANCHES.sh index 5ef126e8..3fbee251 100755 --- a/BRANCHES.sh +++ b/BRANCHES.sh @@ -2,169 +2,87 @@ 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 \ " diff --git a/CLAUDE.md b/CLAUDE.md index 876f729a..647a0534 100644 --- 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