Warum muss ich zum beheben des Konflikts über und über?

Wenn ich git rebase branch1 in meinem branch1-local bekomme ich Konflikte. Ich lösen den Konflikt, tun git add <conflicted-add> tun, und dann git rebase --continue als git-fragt mich, zu tun. Nach, dass ein neuer commit angewendet wird. Ein neuer Konflikt auftaucht. Aber ist der gleiche Konflikt wieder! die gleiche Datei!. Ich es wieder tun, git add, die git rebase --continue, und alles wiederholt sich wieder, bis ich tun, wiederholen Sie diese Schritte für jedes commit wird zurückgesetzt auf.

Warum Stellungswechsel hat Sie mich wiederholen die gleichen Konfliktlösung immer und immer wieder?

  • Ich habe es nie benutzt, ich habe kaum Lesen Sie die Dokumentation, aber werfen Sie einen Blick auf git rerere, AFAIK wird verwendet, um den "record" - Konfliktlösungen und vermeiden, Sie zu wiederholen. Werfen Sie einen Blick auf stackoverflow.com/q/5519244/236871 für die üblichen Fallstricke dieser Funktion.
  • Haben Sie jemals herauszufinden, warum dies passiert ist? Ich hatte andere Menschen, die Berichterstattung, die gleiche Sache, und ich möchte in der Lage sein, zu rekonstruieren, wie eine situation, wo ich eine Bewerbung die genau die gleiche Konfliktlösung mehrmals während eines rebase.
  • ja, die Lösung war nie verwenden rebase wieder. pull, merge und Entschlossenheit, mit add ist alles, was Sie jemals brauchen sollte
  • Hey man, don ' T hate on Stellungswechsel. Das Zeug ist golden.
  • Stellungswechsel im Grunde saugt, weil es ändert die Geschichte und schafft, verpflichtet, die entsprechen nicht jeder Staat, der jemals existiert tatsächlich in Entwicklung (und wurden daher nie getestet). Drop it ist eine gute Wahl. 🙂
  • squash-und merge-klar überlegen ist 🙂
  • Und merge --no-ff überlegen ist, denn es bewahrt die Geschichte noch besser. Auch, verwenden Sie im Allgemeinen git mergetool Konflikte zu lösen.

InformationsquelleAutor lurscher | 2012-12-11
Schreibe einen Kommentar