Konflikt auf dem Bitbucket-Remote-Server, aber lokal ist alles auf dem neuesten Stand

Lesezeit: 2 Minuten

Benutzer-Avatar
NI6

Ich arbeite an einem Projekt, also habe ich einen Feature-Zweig in das Remote-Repository verschoben (mit Atlassian Bitbucket) und eine Pull-Anforderung geöffnet.

Aber bei einer Datei zeigt der Bitbucket den Status „MOVED“ in Braun an und zeigt eine Konfliktmeldung an:

Konflikt: An der Quelle geändert, am Ziel geändert.

Diese Datei befindet sich in einem Konfliktzustand. Sie müssen den Konflikt manuell lösen, bevor Sie diese Pull-Anfrage zusammenführen können.

Also als ich tippte:

git pull origin my_feature

Ich bekomme die Nachricht

Schon aktuell.

Wie kann ich diesen Konflikt lösen?

  • Das Problem ist für die merge Betrieb Ihrer Filiale auf master (Ich vermute). Sie sollten zuerst zusammenführen origin/master in Ihren Zweig und lösen Sie den Konflikt (anscheinend wurde eine von Ihnen geänderte Datei verschoben master Zweig). Sobald das Problem gelöst ist, übergeben und pushen Sie Ihren Zweig erneut und öffnen Sie Ihren Pull-Request erneut.

    – Frodo

    26. September 2016 um 13:06 Uhr

  • Ich habe es versucht, aber da steht auch schon aktuell

    – NI6

    26. September 2016 um 13:08 Uhr

  • Bist du gerannt git fetch ?

    – Frodo

    26. September 2016 um 13:09 Uhr

  • Ja, aber leider hat es nichts geändert

    – NI6

    26. September 2016 um 13:16 Uhr

  • Können Sie das Ergebnis der Operation “git status” für Ihr Repository freigeben?

    – Vitaliuss

    27. September 2016 um 16:04 Uhr

Benutzer-Avatar
Lassen Sie uns codieren

Sie müssen Ihren lokalen Master-Branch aktualisieren. Führen Sie die folgenden Schritte aus:

  • git checkout master
  • git pull origin master
  • git checkout << your branch >>
  • git merge master

Nachdem Sie den vierten Befehl ausgeführt haben, erhalten Sie Zusammenführungskonflikte. Lösen Sie sie und tun Sie dann:

  • git commit

  • Nachdem ich eine Weile mit Git gearbeitet habe, habe ich jetzt verstanden, was passiert ist. Git Pull zieht keine Commits in das gesamte Repository, sondern nur in den Zweig, den Sie verwenden. Um mit einem anderen Zweig zusammenzuführen, müssen Sie diesen Zweig auschecken und ebenfalls ziehen. Dann sind beide auf dem neuesten Stand und eine Zusammenführung funktioniert wie erwartet, Konflikte und alles. Git ist ein dummer Idiot.

    – Suncat2000

    26. September 2018 um 13:15 Uhr


  • @ Suncat2000 Es wäre schrecklich, wenn Git jeden Zweig ziehen würde git pull. Sie könnten am Ende Zweige zusammenführen, für die Sie noch nicht bereit sind.

    – AlexJ

    9. September 2019 um 12:12 Uhr

  • @AlexJ, also eine gute Praxis, bevor Sie eine Pull-Anfrage stellen (oder sogar bevor Sie Ihre Änderungen an Ihren Zweig übergeben und übertragen), wäre es, 1. den Master-Zweig auszuchecken und ihn abzurufen (damit Sie alle Änderungen erhalten) 2. zu wechseln um den Zweig zu entwickeln und abzurufen, können Sie nicht sehen, welche Änderungen andere Entwickler vorgenommen haben, die Sie behalten möchten. 3. commit/push deine Änderungen an remote->dev und 4. git merge master.

    – Anu

    6. Februar 2020 um 22:31 Uhr

  • @Suncar2000 Im Gegenteil, Git ist außergewöhnlich schlau, man muss nur auf Zack sein

    – Scott Anderson

    14. April 2021 um 7:49 Uhr

1220680cookie-checkKonflikt auf dem Bitbucket-Remote-Server, aber lokal ist alles auf dem neuesten Stand

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy