---
# System prepended metadata

title: 任務二：單一 branch 更新與衝突

---

# 任務二：單一 branch 更新與衝突



## 關卡示範影片
{%youtube LEYlUBWqAwI %}


## 關卡提醒
1. 請沿用 `任務 1 ：環境初始化` 的 GitHub Repo 即可，或要新增一個 Repo 重新做也 ok


## 你可以掌握的技術
1. **合併和更新**：在 git push 時遭遇因其他成員已經更新而引發的錯誤。使用 `git pull` 進行合併前的更新，這時可能會產生版本衝突。
2. **版本衝突識別與解決**：當兩位成員修改了同一檔案的同一部分，將會在 `git pull` 時發生版本衝突。學習如何手動解決這些衝突，並合併版本。重新加入索引並使用 git commit 完成合併。


## 任務流程

- [x]  1-1：A 成員新增一個空的 `index.html` **，進行 git push 動作**
- [x]  1-2：B 成員 Clone 下來，將 `index.html` 網頁內容加入下方折疊處後 **，進行 git push 動作**

::: spoiler HTML 內容
```
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>標題</h1>
</body>
</html>
```
:::
- [x] 1-3：**<span style="color:blue">A 成員進行 git pull 抓最新 `index.html` 版本下來</span>**
- [x] 1-4：A 成員修改 head 的 `title`，文字設為 `修改 title`，並 commit 一個版本，comment 內容為 `修改 head title`**，進行 git push 動作**
- [x]  1-5：B 成員進行 `git pull` 抓最新版本下來
- [x]  1-6：B 成員修改 h1 的文字設為 `修改標題`，並 commit 一個版本，comment 內容為 `修改 h1 文字`**，進行 git push 動作**
- [x]  1-7：A 成員修改 head 的 `title`，文字設為 `再次修改 title`，並 commit 一個版本，comment 內容為 `調整 head 文字`
- [x] **1-8：<span style="color:blue">A 成員進行 `git push`，引發更新錯誤</span>**
- [x] 1-9：A 成員執行 `git pull` 合併版本後 **，進行 git push 動作**
- [x] 1-10：B 成員進行 `git pull` 抓最新版本下來
- [x] 1-11：B 成員修改 h1 的文字設為 `修改標題 B`，並 commit 一個版本，comment 內容為 `修改 h1 文字，增加 B 資訊`**，進行 git push 動作**
- [x] 1-12：A 成員修改 h1 的文字設為 `修改標題 A`，並 commit 一個版本，comment 內容為 `修改 h1 文字，增加 A 資訊
- [x] **1-13：<span style="color:blue">A 成員執行 `git pull` 引發版本合併衝突**</span>
- [x] 1-14：A 成員只保留一個 h1，文字設為 `修改標題 AB`，重新加入索引，並執行 `git commit` 來合併版本 **，進行 git push 動作**
- [x] 1-15：B 成員也進行 git pull 抓最新版本下來



## 通關檢核點

- [x]  A、B 成員與 GitHub Repo 都有相同的 commit 數量
- [x]  藍字步驟，都有顯示預期結果
```
## 關鍵步驟講解
1-3：本地 Fast-forward (快轉) 合併成功
1-8：遠端 Fast-forward (快轉) 合併被拒絕 - 
     需執行 Pulling and Merging (拉取並合併)
1-13：Merge Conflict (合併衝突)
```

## 預期線圖
![](https://hackmd.io/_uploads/HyZwfCu-T.png)


## 提交 Git Repo 連結


* [練習用 Git Repo 連結](#)