40 lines
1.1 KiB
Bash
40 lines
1.1 KiB
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
echo "🚀 Starte automatischen Merge- und Tag-Prozess..."
|
|
|
|
git config core.filemode false
|
|
|
|
echo "🔄 Aktualisiere lokale Branches vom Remote..."
|
|
git fetch --all --quiet
|
|
|
|
echo "🌿 Wechsle zu main..."
|
|
git checkout main --quiet
|
|
git pull origin main --quiet
|
|
|
|
echo "🔀 Merge: main -> dev..."
|
|
git checkout dev --quiet
|
|
git pull origin dev --quiet || true
|
|
git merge main --no-ff -m "Automated merge from main to dev" --quiet
|
|
git push origin dev --quiet
|
|
|
|
echo "🔀 Merge: dev -> live..."
|
|
git checkout live --quiet
|
|
git pull origin live --quiet || true
|
|
git merge dev --no-ff -m "Automated merge from dev to live" --quiet
|
|
git push origin live --quiet
|
|
|
|
TAG_NAME="v$(date +'%Y.%m.%d-%H%M')"
|
|
|
|
echo "🏷️ Erstelle Tag: $TAG_NAME..."
|
|
git tag -a "$TAG_NAME" -m "Automated release tag $TAG_NAME"
|
|
git push origin "$TAG_NAME" --quiet
|
|
|
|
git checkout main --quiet
|
|
|
|
echo ""
|
|
echo "========================================================"
|
|
echo "✅ FERTIG! Alles sauber durchgelaufen."
|
|
echo "📦 Neuer Release-Tag gepusht: $TAG_NAME"
|
|
echo "========================================================" |