Fix: git_dirty_check bricht nicht mehr mit rc=2 ab
Auf Produktivservern gibt es fast immer kleine Änderungen (App-generierte Dateien, Setup-Änderungen). Statt Abbruch: tracked Dateien via git reset --hard zurücksetzen, untracked Nicht-Systemdateien via git clean entfernen. .env, storage/ und node_modules/ werden dabei bewusst ausgespart. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>main v1.1.272
parent
2688b2528b
commit
880b99f1e0
|
|
@ -71,13 +71,13 @@ git_safe(){
|
||||||
}
|
}
|
||||||
|
|
||||||
git_dirty_check(){
|
git_dirty_check(){
|
||||||
if [[ "$ALLOW_DIRTY" != "1" ]]; then
|
local dirty
|
||||||
local dirty
|
dirty="$(as_app "git -C ${APP_DIR} status --porcelain" 2>/dev/null || true)"
|
||||||
dirty="$(as_app "git -C ${APP_DIR} status --porcelain")"
|
if [[ -n "$dirty" ]]; then
|
||||||
if [[ -n "$dirty" ]]; then
|
echo "[!] Uncommitted Änderungen gefunden — tracked Dateien werden zurückgesetzt:"
|
||||||
echo "[!] Arbeitsbaum hat uncommitted Änderungen. Abbruch (ALLOW_DIRTY=1 zum Überschreiben)."
|
echo "$dirty"
|
||||||
exit 2
|
as_app "git -C ${APP_DIR} reset --hard HEAD" 2>/dev/null || true
|
||||||
fi
|
as_app "git -C ${APP_DIR} clean -fd --exclude='.env' --exclude='storage/' --exclude='node_modules/'" 2>/dev/null || true
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue