Das Problem mit --force
Ein normales git push --force uberschreibt den Remote-Branch.
Was --force-with-lease tut
git push --force-with-lease origin feature/login
Ein Arbeitsbeispiel
git rebase origin/main
git push --force
git push --force-with-lease
Erwarteten SHA spezifizieren
git push --force-with-lease=feature/login:abc123 origin feature/login
Zum Standard machen
git config --global alias.pf 'push --force-with-lease'
git config --global alias.force-push '!echo Use git pf instead'
Die Fetch-Falle
git fetch
git log origin/feature/login
git push --force-with-lease
Neuere Alternative: --force-if-includes
git push --force-with-lease --force-if-includes
Wenn Sie --force verwenden mussen
Geschichte auf einem Branch umschreiben, der Ihnen allein gehort.