#!/bin/bash # 1. Aktuelles Verzeichnis und Name ermitteln CURRENT_DIR=$(pwd) PROJECT_NAME=$(basename "$CURRENT_DIR") echo "--- Initialisiere Git-Projekt in: $CURRENT_DIR ---" # 2. Git initialisieren, falls noch nicht geschehen if [ -d ".git" ]; then echo "Info: Hier existiert bereits ein Git-Repository. Fahre mit Konfiguration fort..." else git init echo "Git-Repository wurde initialisiert." fi # 3. Dateien nur erstellen, wenn sie NICHT existieren if [ ! -f "README.md" ]; then echo "# $PROJECT_NAME" > README.md echo "Check: README.md wurde neu erstellt." else echo "Check: Bestehende README.md gefunden – wird beibehalten." fi if [ ! -f ".gitignore" ]; then cat < .gitignore *.log .env node_modules/ .DS_Store EOF echo "Check: .gitignore wurde neu erstellt." else echo "Check: Bestehende .gitignore gefunden – wird beibehalten." fi # 4. Erster lokaler Commit (nur wenn Änderungen da sind) git add . if git diff-index --quiet HEAD --; then echo "Info: Keine neuen Änderungen zum Committen." else git commit -m "Initialer Commit oder Update durch git-init" git branch -M main fi # 5. Remote URL abfragen echo "------------------------------------------------" echo "Damit der Push funktioniert, wird eine Remote-URL benötigt." read -p "Remote URL (Enter zum Überspringen): " remote_url if [ -n "$remote_url" ]; then # Sicherstellen, dass kein alter 'origin' stört git remote remove origin 2>/dev/null git remote add origin "$remote_url" echo "Remote 'origin' wurde auf $remote_url gesetzt." # 6. Erster Push echo "Führe Push auf 'main' aus..." git push -u origin main else echo "Keine URL angegeben. Das Repo bleibt lokal." fi echo "------------------------------------------------" echo "--- Fertig! Alles sicher in $PROJECT_NAME ---"