Tödlich: Schnellvorlauf nicht möglich, Abbruch

79

Warum kann ich mit Git nicht mehr schnell vorspulen? Wenn ich versuche, die Verwendung zu erzwingen --ff-only, wird die Meldung "Schwerwiegend: Schnellvorlauf nicht möglich, Abbruch möglich" angezeigt. Mir ist klar, dass dies enorme Vorteile hat merge --no-ff, aber ich bin nur verwirrt, warum ich es --ff-onlyjetzt nicht kann .

Jesse Leite
quelle

Antworten:

87

Ihr Zweig basiert nicht mehr direkt auf dem Zweig, in den Sie ihn zusammenführen möchten. Beispielsweise wurde dem Zielzweig, der sich nicht in Ihrem Zweig befindet, ein weiteres Commit hinzugefügt. Daher können Sie nicht schnell vorspulen (da für den schnellen Vorlauf Ihr Zweig den Zielzweig vollständig enthalten muss).

Sie können Ihren Zweig über dem Zielzweig ( git rebase <destination branch>) neu gründen , um die Commits so zu überarbeiten, dass sie schnell in ihn vorspulen , oder Sie können eine regelmäßige Zusammenführung durchführen.

Bernstein
quelle
Wie ist das möglich? Das ist nicht richtig. Es muss sich um eine Einstellung handeln, die sich geändert hat.
Mathtick
66

git pull --rebase. Im Gegensatz zur anderen Lösung müssen Sie den Namen Ihres Zielzweigs nicht kennen.

Crypdick
quelle
8

Der Grund für diesen Fehler ist der "Conflict of Merge". Wenn mehrere Änderungen / Aktualisierungen an Ihrer GitHub-Datei vorgenommen wurden, ohne dass Ihre Änderungen in jeder Phase eines Updates abgerufen wurden, führt dies zu Konflikten beim Zusammenführen.

Normalfall: -

$ git pull

Hinweis: - Sie erhalten eine Fehlermeldung. Tödlich: Schneller Vorlauf, Abbruch nicht möglich

Probier diese:-

$ git pull origin master --rebase

Hinweis: - Nach diesem Befehl werden Probleme beim Zusammenführen von Konflikten angezeigt. Jetzt können Sie zu Ihrer Datei gehen und den Konflikt manuell lösen. Konfliktfehler zusammenführen

Piyush Agnihotri
quelle