CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
GitHub 协作进阶/课时/Pull Request
RawBlame
课时目录12 节

GitHub 协作进阶

  1. 01GitHub 路线图概览
  2. 02账号与 Profile
  3. 03仓库管理
  4. 04提交与历史
  5. 05分支与变基
  6. 06远程与 Fork
  7. 07Pull Request
  8. 08Issues 协作
  9. 09GitHub Actions
  10. 10组织与团队
  11. 11Pages 与静态站
  12. 12综合练习

Pull Request

pull-requests、pr-guidelines、code-reviews、viewing-diffs。

35 分钟

Pull Request

Pull Request(PR) 是 GitHub 协作核心:提议把某分支的变更合并进目标分支,附带描述、Review、CI 检查与讨论。本课对应 git-github 路线图 的 pull-requests、pr-guidelines、code-reviews、viewing-diffs。

分支保护与 required checks 在 github-actions-essentials 的 PR 课有 CI 视角;本地 merge 见 git-essentials。

学习目标

  • 撰写可 review 的 PR 标题与描述
  • 参与 Code Review:comment、request changes、approve
  • 阅读 Files changed diff,理解 merge 策略

开 PR 的标准流程

git switch main
git pull upstream main
git switch -c feature/add-validation
# 开发、测试、commit
git push -u origin feature/add-validation

GitHub:Pull requests → New pull request
base: upstream/main ← compare: your-fork/feature/add-validation

PR 描述模板

## 变更说明
- 为用户注册接口增加邮箱格式校验

## 如何测试
1. `npm test`
2. POST /api/register 带非法邮箱应返回 400

## 关联 Issue
Closes #88

## 截图(UI 变更时)
...

标题与 commit 一致:feat(auth): 注册接口邮箱校验。

Code Review 礼仪

作者:

  • PR 尽量小(< 400 行 diff 更易 review)
  • 自测通过再请求 review
  • 积极回复 comment,push 新 commit 会自动出现在 PR

Reviewer:

  • 对代码提问,对人尊重
  • 使用 Request changes / Approve 明确结论
  • 建议用 nit: 表示非阻塞小意见
# 根据 review 修改后
git add .
git commit -m "fix: 按 review 调整错误码"
git push origin feature/add-validation

阅读 Diff

Files changed 页:

  • 绿色新增、红色删除
  • 点行号可写行级 comment
  • Viewed 标记已读文件

本地等价:

git diff main...feature/add-validation

三点语法 A...B 表示「从共同祖先到 B」,与 PR diff 一致。

合并策略

策略效果
Merge commit保留分支拓扑
Squash and mergemain 上一条 commit
Rebase and merge线性历史,无 merge commit

受保护分支可强制 PR + Approve + CI 绿勾(见 Actions track)。

练习

  • 对 fork 仓开 PR,填写完整描述模板
  • 请同学或自己小号做一次 Approve + Comment
  • 对比 git diff main...branch 与 GitHub Files changed

小结

PR = 变更说明 + 讨论 + 合并门禁。 下一课 Issues:任务跟踪、标签、@ 提及与 emoji reactions。

加载本节练习…
← 上一课远程与 Fork下一课 →Issues 协作