Da Anonimo (non verificato) , 29 Aprile 2026

Il problema con --force

Un semplice git push --force sovrascrive il branch remoto con qualsiasi cosa si abbia localmente.

Cosa fa --force-with-lease

git push --force-with-lease origin feature/login

Un esempio pratico

git rebase origin/main
git push --force
git push --force-with-lease

Specificare lo SHA atteso

git push --force-with-lease=feature/login:abc123 origin feature/login

Renderlo il default

git config --global alias.pf 'push --force-with-lease'
git config --global alias.force-push '!echo Use git pf instead'

La trappola del fetch

git fetch
git log origin/feature/login
git push --force-with-lease

Alternativa piu recente: --force-if-includes

git push --force-with-lease --force-if-includes

Quando devi usare --force

Riscrivere la storia su un branch che si sa essere proprio in esclusiva, o dopo un evento distruttivo come segreti trapelati.