63 lines
1.9 KiB
Bash
63 lines
1.9 KiB
Bash
#!/bin/bash
|
||
# Setzt Übungsordner zurück, die Teilnehmende während der Schulung angelegt haben.
|
||
# Führe dieses Skript aus dem Stammverzeichnis des Schulungs-Repos aus.
|
||
|
||
set -euo pipefail
|
||
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
|
||
echo "=== Git-Schulung: Übungen zurücksetzen ==="
|
||
echo "Arbeitsverzeichnis: $SCRIPT_DIR"
|
||
echo ""
|
||
|
||
# Sicherheitsabfrage
|
||
read -rp "Alle Übungsordner (meine-notizen, branch-uebung, konflikt-uebung) löschen? [j/N] " antwort
|
||
if [[ "${antwort,,}" != "j" ]]; then
|
||
echo "Abgebrochen."
|
||
exit 0
|
||
fi
|
||
|
||
# Übungsordner entfernen (aus Sicherheit nur bekannte Namen)
|
||
UEBUNGSORDNER=("meine-notizen" "branch-uebung" "konflikt-uebung")
|
||
|
||
for ordner in "${UEBUNGSORDNER[@]}"; do
|
||
ziel="$SCRIPT_DIR/$ordner"
|
||
if [[ -d "$ziel" ]]; then
|
||
rm -rf "$ziel"
|
||
echo " ✓ Entfernt: $ordner"
|
||
else
|
||
echo " – Nicht vorhanden: $ordner (übersprungen)"
|
||
fi
|
||
done
|
||
|
||
# konflikt-vorlage.txt zurücksetzen
|
||
VORLAGE="$SCRIPT_DIR/04-merge-und-konflikte/konflikt-vorlage.txt"
|
||
if [[ -f "$VORLAGE" ]]; then
|
||
cat > "$VORLAGE" <<'EOF'
|
||
Zeile 1: Diese Zeile wird nicht verändert.
|
||
Zeile 2: Diese Zeile wird auch nicht verändert.
|
||
Zeile 3: [HIER ÄNDERN] – Diese Zeile wird in beiden Branches unterschiedlich verändert.
|
||
Zeile 4: Diese Zeile bleibt wieder gleich.
|
||
Zeile 5: Ende der Vorlage.
|
||
EOF
|
||
echo " ✓ konflikt-vorlage.txt zurückgesetzt"
|
||
fi
|
||
|
||
# Prüfen, ob das Schulungs-Repo selbst sauber ist
|
||
cd "$SCRIPT_DIR"
|
||
if git rev-parse --git-dir > /dev/null 2>&1; then
|
||
STATUS=$(git status --porcelain)
|
||
if [[ -n "$STATUS" ]]; then
|
||
echo ""
|
||
echo " ⚠ Das Schulungs-Repo hat ungespeicherte Änderungen:"
|
||
git status --short
|
||
echo ""
|
||
echo " Tipp: 'git restore .' setzt alle Änderungen zurück."
|
||
else
|
||
echo " ✓ Schulungs-Repo ist sauber"
|
||
fi
|
||
fi
|
||
|
||
echo ""
|
||
echo "=== Fertig! Das Repo ist bereit für die nächste Schulung. ==="
|