Git Push Änderungen erzwingen

Azhar Bashir Khan 6 Februar 2022 Git Git Push
Git Push Änderungen erzwingen

In diesem Artikel werden wir sehen, wie lokale Änderungen zwangsweise in das Remote-Repository in Git gepusht werden.

Git erlaubt nur lokale Änderungen in das Remote-Repository zu pushen, die Nachkommen der Änderungen im Remote-Repository sind.

In einigen Fällen möchten wir möglicherweise die Änderungen übertragen, die dies nicht sind (d. h. Änderungen, die den Änderungen im Remote-Repository vorausgehen können).

In solchen Fällen müssen wir den Befehl git push mit der Option --force verwenden.

Wir werden dies nun an einem Beispiel veranschaulichen.

Verwenden von git push --force, um lokale Änderungen im Remote-Repository in Git zwangsweise zu pushen

Wenn wir in einer kollaborativen Entwicklungsumgebung arbeiten, stoßen wir manchmal auf eine Situation, in der wir einige Änderungen in das Remote-Repository übertragen haben.

Jetzt entscheiden wir, dass diese Änderungen nicht mehr relevant sind, und wir möchten neue lokale Änderungen in das Remote-Repository übertragen.

Außerdem haben einige andere Teamkollegen möglicherweise bereits diese Remote-Repository-Änderungen übernommen, die wir zuvor gepusht haben. und möglicherweise auf ihnen gearbeitet haben. Anschließend haben sie ihre Änderungen möglicherweise in das Remote-Repository übertragen.

Git erfordert normalerweise, dass wir zuerst die Änderungen, die möglicherweise von anderen Teamkollegen gepusht wurden, aus dem Remote-Repository abrufen, bevor wir die neuen lokalen Änderungen hineinschieben.

Daher müssen wir in solchen Fällen den Befehl git push mit der Option --force verwenden. Die Syntax des Befehls lautet git push origin <branch_name> --force

Angenommen, wir haben einen Zweig namens main. Wir würden dann wie folgt vorgehen, um die Änderungen mit Nachdruck voranzutreiben.

$ git push origin main --force

Achtung: Dadurch werden die Änderungen überschrieben, die bereits im Remote-Repository vorhanden sind und möglicherweise seit dem vorherigen Push aufgetreten sind.

Daher werden die Änderungen, die Ihre Teamkollegen möglicherweise bereits am Remote-Repository vorgenommen haben, überschrieben.

Es gibt eine weitere Option für den Befehl git push, nämlich. --force-with-lease. Bei Verwendung dieser Option mit git push wird eine Fehlermeldung ausgegeben und Git wird die Änderungen nicht pushen, wenn bereits einige Änderungen in das Remote-Repository gepusht wurden.

Diese Option --force-with-lease stellt sicher, dass wir die Änderungen anderer Teamkollegen nicht überschreiben.

Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren

Verwandter Artikel - Git Push