把分支變成審查流程 — Pull Request
直接把分支 merge 進 main 很危險。GitHub 的答案是 Pull Request(PR): 一個「請求把某分支合併進另一分支」的審查流程。
1. 開分支 → 開發 → push 2. 在 GitHub 開 Pull Request (feature 分支 → main) 3. 隊友 Review:討論、留言、改進 4. 通過檢查 → 合併 Merge 5. 完成!功能進入 main
git push 到 GitHub。Reviewer 在 PR 的「Files changed」分頁逐行檢視與留言:
| 審查動詞 | 意義 |
|---|---|
| Comment | 一般留言,不阻擋合併 |
| Request changes | 需要修正後再合併(擋) |
| Approve | 同意合併 |
在 PR 描述寫 Closes #12,合併時 GitHub 會自動關閉 issue 12。
修正登入頁空白問題。 - 加上欄位驗證 - 修正錯誤訊息 Closes #12
關鍵字:fixes、closes、resolves,後面接 #issue編號。
防止有人直接 push main,強制「必須 PR + review 才能合併」。
Repo → Settings → Branches → Branch protection rules ├── Require a pull request before merging ├── Require approvals(至少 1 人 Approve) └── Require status checks(CI 通過才合併,見單元 7)
| 方式 | 效果 | 何時用 |
|---|---|---|
| Merge commit | 保留所有 commit 與「合併事件」 | 保留完整歷史 |
| Squash and merge | 把整條分支壓成一個 commit | 功能分支(最常見) |
| Rebase and merge | 線性重放,無合併事件 | 想保持線性歷史 |
Closes #12 關聯 issue。