40 lines
1.0 KiB
Bash
40 lines
1.0 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 "========================================================" |