製造拉取請求的衝突
有些合併衝突可能導致源代碼無法自動合併。在這種情況下,您需要手動修復問題。
為了演示如何合併衝突,我們首先需要在多個分支上創建和編輯代碼,並嘗試合併它們。
首先,我們需要重現發生衝突的情況。我們可以對 sort.js
的一個分支使用相等運算符==
,對另一個分支使用嚴格相等運算符===
,從而使衝突發生。
創建一個新的儲存庫,並將以下源代碼推送到主分支。
// sort.js
var number = [19, 3, 81, 1, 24, 21];
console.log(number);
接下來,建立兩個分支。
$ git checkout -b add-sort-func2
$ git checkout -b add-sort-func1
然後在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);
並提交和推送更改。
$ git add sort.js
$ git commit -m "<commit_message>"
$ git push origin add-sort-func1
`A process of sorting an array has been added`
接下來,為add-sort-func1
分支發出拉取請求並合併。
然後將分支切換到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);
並提交和推送更改。
$ git add sort.js
$ git commit -m "<commit_message>"
$ git push origin add-sort-func2
“A process of sorting an array has been added”
接下來,為add-sort-func2
分支建立拉取請求。
這就是我們的衝突發生的地方。