Skip to main content
  1. Learn
  2. Software Development
  3. Guides
  4. Git tutorial
  5. 如何使用 Git
  6. 如何在 Git 中使用拉取請求
  7. 製造拉取請求的衝突
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

製造拉取請求的衝突

有些合併衝突可能導致源代碼無法自動合併。在這種情況下,您需要手動修復問題。

為了演示如何合併衝突,我們首先需要在多個分支上創建和編輯代碼,並嘗試合併它們。

首先,我們需要重現發生衝突的情況。我們可以對 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分支發出拉取請求並合併。

Click "Add pull request" Click "Merge"

然後將分支切換到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分支建立拉取請求。

Click "Add pull request"

這就是我們的衝突發生的地方。

Conflict occurs Conflict occurs

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life