Ich habe gerade versucht, these Atlassian Bitbucket instructions für die Auflösung von Zusammenführungskonflikten und festgestellt, dass es nicht richtig funktioniert.Git-Merge-Anweisungen funktionieren nicht wie erwartet
Wenn diese Anweisungen befolgt werden, überschreiben manchmal Änderungen im Zweig "develop" Änderungen, die im "source branch" vorgenommen wurden.
Zum Beispiel in einer Swift-Datei (beachten Sie, dass es sich um zwei Versionen und die Zeilennummern enthalten sind):
dies entwickelt und git versucht, diese zu halten.
required init?(map: Map){ // 67
super.init() // 68
mapping(map: map) // 69
if origin == nil { // 70
origin = "" // 71
} // 72
} // 73
ist die Quelldatei
required init?(map: Map){ // 67
super.init() // 68
mapping(map: map) // 69
} // 70
Wie Sie die „Quelle Zweig“ sehen können diese Zeilen Code hat gelöscht, aber git denkt „entwickeln“, um sie wieder in wieder hinzufügen sollte. (Zu Recht, wenn ich erzähle, dass ich nach Atlassian Anweisungen in meinen Zweig einmache)
Dies ist falsch, da alles in meinem Zweig versuchen sollte, jede Datei/Änderung im Entwicklungszweig zu überschreiben und einen Konflikt auszulösen, wenn es einen gibt ein.
Bin ich noob oder sind diese Anweisungen falsch?
Kann auch jemand vorschlagen, Konfliktlösung, die meine Branche als die alle und Ende verwendet?
(ich glaube, ich brauche zu haben, „entwickeln“ ausgecheckt und dann verschmelzen die „Feature Zweig“ in das. Holen Sie sich das Gefühl, dass dies obwohl die Pull-Anforderung Schritt überspringt ... wollen nicht)
Nein, wir können nicht „sehen“, dass alles gelöscht wurde von dem, was Sie sehen sind. Um das zu sehen, müssen wir wissen, was sich geändert hat und wo und welcher Zweig zu welcher Branche verschmolzen ist. Die einzige Zeit, in der Konflikte bei der Zusammenführung auftreten, ist, wenn Änderungen an derselben oder an benachbarten Codezeilen vorgenommen wurden. – crashmstr
@crashmstr Ich habe Zeilennummern hinzugefügt und die zwei Dateien zur besseren Übersicht in separate Codeblöcke aufgeteilt. – user1567453
Verschmelzen Sie 'source' in' develop' und diese Datei und diese Zeilen * änderten sich nicht in 'develop'? Wenn Sie eine Pull-Anforderung ausführen, werden diese nicht manuell zusammengeführt. Die Pull-Anforderung wird dies nach der Genehmigung tun. – crashmstr