Erstellen eines Pull-Anforderungskonflikts
Einige Merge-Konflikte können eine automatische Zusammenführung des Quellcodes unmöglich machen. In diesem Fall müssen Sie das Problem manuell beheben.
Um aufzuzeigen, wie Zusammenführungen mit Konflikten durchgeführt werden, müssen wir zunächst Code in mehreren Branches erstellen und bearbeiten und versuchen, sie per Merge zusammenzuführen.
Zunächst müssen wir die Situation, in der der Konflikt auftritt, reproduzieren. Wir können einen Konflikt herbeiführen, indem wir den Gleichheitsoperator ==
für einen Branch von sort.js und den strikten Gleichheitsoperator ===
für den anderen verwenden.
Erstellen Sie ein neues Repository, und pushen Sie den folgenden Quellcode in den Haupt-Branch.
// sort.js
var number = [19, 3, 81, 1, 24, 21];
console.log(number);
Erstellen Sie dann zwei Branches.
$ git checkout -b add-sort-func2
$ git checkout -b add-sort-func1
Bearbeiten Sie dann den Quellcode im Branch add-sort-func1
.
// sort.js
var sortNumber = function (number) {
number.sort(function (a, b) {
if (a == b) {
return 0;
}
return a < b ? -1 : 1;
});
};
var number = [19, 3, 81, 1, 24, 21];
sortNumber(number);
console.log(number);
Übertragen Sie die Änderungen per Commit und Push.
$ git add sort.js
$ git commit -m "<commit_message>"
$ git push origin add-sort-func1
“A process of sorting an array has been added”
Im nächsten Schritt erstellen Sie eine Pull-Anforderung für den Branch add-sort-func1
und führen einen Merge durch.
Wechseln Sie dann den Branch zu add-sort-func2
.
$ git checkout add-sort-func2
Edit the source code.
// sort.js
var sortNumber = function (number) {
number.sort(function (a, b) {
if (a === b) {
return 0;
}
return a < b ? -1 : 1;
});
};
var number = [19, 3, 81, 1, 24, 21];
sortNumber(number);
console.log(number);
Übertragen Sie die Änderungen per Commit und Push.
$ git add sort.js
$ git commit -m "<commit_message>"
$ git push origin add-sort-func2
“A process of sorting an array has been added”
Im nächsten Schritt erstellen Sie eine Pull-Anforderung für den Branch add-sort-func2
.
Genau hier tritt unser Konflikt auf.