]> juplo.de Git - demos/kafka/training/commitdiff
copy.sh: checkout_branch-Funktion extrahiert, case vor checkout verschoben
authorKai Moritz <kai.milan.moritz@googlemail.com>
Sun, 31 May 2026 09:47:24 +0000 (09:47 +0000)
committerKai Moritz <kai.milan.moritz@googlemail.com>
Sun, 31 May 2026 09:47:24 +0000 (09:47 +0000)
TAG_SUFFIX-if/else war dupliziert (grundlagen/docker + Schleife). Jetzt in
checkout_branch() gekapselt. case-Statement steht jetzt vor dem Checkout,
sodass --livecoding--schritte-Branches gar nicht erst ausgecheckt werden.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
copy.sh

diff --git a/copy.sh b/copy.sh
index 61c8e451625b7803c5d675da9c43da3bc4b7a6bc..b5417566a1157eb0091a12a7fcec4e0f018afa18 100755 (executable)
--- a/copy.sh
+++ b/copy.sh
@@ -39,6 +39,14 @@ RSYNC_OPTS=(
   --exclude=reset.sh
 )
 
+checkout_branch() {
+  if [ "$TAG_SUFFIX" != "" ]; then
+    git checkout "${1}--${TAG_SUFFIX}"
+  else
+    git checkout "$1"
+  fi
+}
+
 sync_to() {
   mkdir -p "$1"
   "${RSYNC_OPTS[@]}" . "$1"
@@ -47,21 +55,12 @@ sync_to() {
 EXPECTED=$(mktemp)
 trap 'rm -f "$EXPECTED"' EXIT
 
-if [ "$TAG_SUFFIX" != "" ]; then
-  git checkout "grundlagen/docker--${TAG_SUFFIX}"
-else
-  git checkout grundlagen/docker
-fi
+checkout_branch "grundlagen/docker"
 echo "$VORLAGEN/grundlagen/docker" >> "$EXPECTED"
 sync_to "$VORLAGEN/grundlagen/docker/"
 
 for i in $BRANCHES; do
   declare -n branch=${i}
-  if [ "$TAG_SUFFIX" != "" ]; then
-    git checkout "${branch}--${TAG_SUFFIX}"
-  else
-    git checkout "$branch"
-  fi
   case "$branch" in
   *--livecoding--schritte)
     echo "Ignoriere Einzelschritte eines Live-Codings: $branch"
@@ -77,6 +76,7 @@ for i in $BRANCHES; do
     dest="$MUSTERLOESUNGEN/$branch"
     ;;
   esac
+  checkout_branch "$branch"
   echo "$dest" >> "$EXPECTED"
   sync_to "$dest/"
 done