diff --git a/scripts/update.sh b/scripts/update.sh index 1d1b08d..256e4f3 100644 --- a/scripts/update.sh +++ b/scripts/update.sh @@ -71,13 +71,13 @@ git_safe(){ } git_dirty_check(){ - if [[ "$ALLOW_DIRTY" != "1" ]]; then - local dirty - dirty="$(as_app "git -C ${APP_DIR} status --porcelain")" - if [[ -n "$dirty" ]]; then - echo "[!] Arbeitsbaum hat uncommitted Änderungen. Abbruch (ALLOW_DIRTY=1 zum Überschreiben)." - exit 2 - fi + local dirty + dirty="$(as_app "git -C ${APP_DIR} status --porcelain" 2>/dev/null || true)" + if [[ -n "$dirty" ]]; then + echo "[!] Uncommitted Änderungen gefunden — tracked Dateien werden zurückgesetzt:" + echo "$dirty" + as_app "git -C ${APP_DIR} reset --hard HEAD" 2>/dev/null || true + as_app "git -C ${APP_DIR} clean -fd --exclude='.env' --exclude='storage/' --exclude='node_modules/'" 2>/dev/null || true fi }