审查 Pull Request

本课程我们将学习如何在 GitHub 上进行协同工作。

这是一个交互式课程,需要在 GitHub 上实际操作来完成学习。本页面为静态预览,仅方便您一次性阅读所有步骤内容。

前往 GitHub 开始学习 →

📖课程概览

English | 中文

本课程翻译自 Github Skills,全部课程请点击 这里查看

审查 Pull Request

本课程我们将学习如何在 GitHub 上进行协同工作。

Welcome

优秀的项目从来不是一个人完成的。Pull Request(简称 PR)是 GitHub 上最重要的协作方式,它让团队成员能够一起查看代码修改、交流意见、提出优化建议,或直接确认变更。通过合理使用 Pull Request,你可以让合作更高效,也让代码更可靠。

  • 目标人群:开发者、GitHub 新手、Git 新用户、学生、管理者或团队成员。
  • 学习内容:何时以及如何发起审查,并完成对其他人的拉取请求进行审查
  • 您将完成:我们将通过一个简单的游戏示例演示如何审查PR。
  • 先决条件:需要你已经了解如何创建分支、提交(commit)和 Pull Request。如果还不熟悉,可以先学习我们的 GitHub 入门课程
  • 课程时长:大约 30 分钟内可完成。

在本课程中,你将完成以下内容:

  1. 创建一个 Pull Request
  2. 将自己设置为负责人
  3. 进行一次代码审查
  4. 提出修改建议
  5. 应用这些修改
  6. 合并 Pull Request

如何开始本课程

start-course

  1. 右键点击上方 Start course 按钮,选择在新标签页中打开链接。
  2. 在新页面中根据系统提示新建一个仓库。
    • 仓库名称、描述这些字段系统已经帮我们自动填充好了,您可以按需修改。
    • 建议选择公开仓库,因为私有仓库有GitHub Actions 分钟数限制
    • 最后点击 Create repository 按钮
  3. 仓库创建完毕后,等待大约 20 秒(等待Action执行),然后刷新页面。注意是刷新您仓库的页面,不是本课程的页面。如果页面没有变化,请继续等待。然后按照 README 中的步骤一步步进行。

🎯课程步骤

GitHub

Step 1: 创建一个 Pull Request

欢迎来到 "Review pull requests" 课程! 👋

我们先从创建一个 Pull Request 开始。

什么是 Pull Request?: 拉取请求(Pull Request, 简称PR) 是一种团队协作机制,它允许开发者将自己在一个分支上的代码更改“拉取”到另一个分支,并提议将这些更改合并到主代码库中。 该请求会向其他协作者发出通知,让他们可以查看你所做的更改,包括代码差异、评论和建议。协作者可以进行代码审查,提出意见,并在集成之前进行讨论和修改。

⌨️ 实操环节: 创建一个 Pull Request

  1. 打开你仓库页面中的 Pull requests tab页。
  2. 点击 New pull request(新建 Pull Request)
  3. base: 下拉框中,确认选择的是 main
  4. compare: 下拉框中,选择 update-game 分支。
  5. 点击 Create pull request(创建 Pull Request)
  6. 在标题栏输入:Update the game over message
  7. 在描述栏输入: Update the game over message so people know how to play again! (意思是:更新“游戏结束”提示,让玩家知道怎么重新开始游戏。)
  8. 点击 Create pull request 完成创建。
  9. 等待大约 20 秒,然后刷新此页面。GitHub Actions 会自动检测并带你进入下一步。
GitHub

Step 2: 把自己设为负责人

你已经成功创建了一个 Pull Request! 👋

什么是 Pull Request 审查?: 当别人提交了一个 Pull Request 时, 其他协作者就可以对它进行审查(review)。你可以查看他们修改的内容,提出意见或建议,帮助改进代码。 这不仅能提升项目质量,也是一个学习他人思路、了解项目结构的好机会。

想要别人帮你审查 Pull Request,最直接的方法就是指派(assign)。 在 GitHub 上,你可以把某个人设为负责处理这个 PR 的 assignee, 或者把他们添加为 reviewer(审查者)。

⌨️ 实操环节: 指派给自己

  1. 打开刚刚创建的 Pull Request。

  2. 在页面右侧找到 Assignees(负责人) 栏。

  3. 点击“添加”并选择你自己的用户名。

    由于 Pull Request 是你自己创建的,你无法将自己设为 reviewer(审查者)。 不过,你可以尝试把朋友添加为 reviewer,体验一下整个流程 😄

  4. 等待大约 20 秒,然后刷新此页面。 GitHub Actions 会检测到操作并自动进入下一步。

GitHub

Step 3: 提交审查

你已经成功把自己设为负责人啦! 🎉

接下来,我们要学习如何对 Pull Request 进行审查(Review)。 代码审查的目的,是确保项目质量、保持一致性,并帮助团队成员更好地理解每一次改动。

审查 Pull Request 时,你可以这样做:

  1. 先读说明:通过 Pull Request 的标题和描述(包括相关 issue),了解这次修改的目的。
  2. 分析代码差异(diff):在项目整体的语境中理解这次改动。
  3. 必要时试运行:实际测试修改后的效果,看是否符合预期。
  4. 参考贡献指南:如果仓库里有 贡献指南(Contributing Guide),可以查阅其中的审查规范。

在评论中可以做的事:

  • 发现潜在问题、风险或遗漏。
  • 提出优化或改进建议。
  • 提醒作者注意项目中即将发生的变动。
  • 提问以确保彼此理解一致。
  • 认可作者做得好的地方。
  • 重点反馈最重要的部分。
  • 简明清晰,同时提供有价值的信息。
  • 以尊重和友善的态度交流。

当你认为修改暂时不需要合并时,可以使用 comment(评论)。 如果你觉得改动没问题,可以选择 approve(批准)。 若发现还需要修改,则可以选择 request changes(请求更改)

不过因为这个 Pull Request 是你自己创建的,你暂时不能对自己的 PR 进行批准或请求修改。

⌨️ 实操环节

  1. 在 Pull Request 页面中,点击 Files changed tab。
  2. 点击右上角的 Review changes 按钮。
  3. 在输入框中写下你对 Pull Request 的初步想法或反馈。
  4. 选择 Comment(评论)选项。
  5. 点击 Submit review(提交审查)
  6. 等待大约 20 秒,然后刷新此页面。 GitHub Actions 会自动检测到操作并进入下一步。
GitHub

Step 4: 提出修改建议

很棒!你已经成功完成了一次审查 ✨

接下来,我们来学习 GitHub 里一个非常实用的功能 —— 提出修改建议(Suggest changes)

什么是 suggest changes?:

当你在审查代码时,可能会发现一些小问题,比如代码不规范,或者某行逻辑可以更简洁。 这时你就可以直接在评论中给出修改建议。 更方便的是,PR 的作者可以一键采纳你的建议并提交,无需手动修改代码。

这个功能让代码审查不仅是讨论,更是一次高效的协作。

⌨️ 实操环节

  1. 打开 Pull Request 页面,点击 Files changed
  2. 找到文件 index.html 的修改内容。
  3. 把鼠标移动到代码左侧的行号旁边。
  4. 点击出现的蓝色加号图标。
  5. 在评论输入框中,点击 Add a suggestion(添加建议) 按钮。
    add-a-suggestion-button
  6. 修改建议内容,写上你认为更合适的代码或文本。
  7. 点击 Add a single comment(添加单条评论) 提交建议。
  8. 等待约 20 秒后刷新此页面。 GitHub Actions 会检测到你的操作并进入下一步。
GitHub

Step 5: 应用修改建议

你已经学会了如何提出修改建议! 🥳

接下来我们来看看,如何一键将他人的建议应用到你的 Pull Request 中。其实这个过程非常简单,GitHub 会自动帮你完成提交。

⌨️ 实操环节:应用修改建议

  1. 点击 Commit suggestion(提交建议)
  2. 输入一条简短的提交说明。
  3. 点击 Commit changes(提交更改)
  4. 等待大约 20 秒,然后刷新此页面(也就是你正在阅读的教程页)。 GitHub Actions 会自动检测并进入下一步。
GitHub

Step 6: 合并你的 Pull Request

离完成就差最后一步啦! ❤️

现在你可以合并(merge)你的 Pull Request 了。 这一步会把你刚才的修改正式整合到主分支中。

⌨️ 实操环节

  1. 点击 Merge pull request
  2. 删除分支 update-game(可选)。
  3. 等待大约 20 秒,然后刷新此页面(也就是你正在阅读的教程页)。 GitHub Actions 会自动检测到操作并跳转到下一步。
GitHub

完成

你已经顺利完成了本课程!

celebrate

下面是课程内容回顾:

  • 学会了如何为 Pull Request 分配审查人
  • 学会了如何对 Pull Request 进行审查
  • 学会了如何提出修改建议
  • 学会了如何应用别人提出的修改建议

接下来可以尝试:

关于 GitHub Skills

GitHub Skills 是 GitHub 官方提供的交互式学习平台。 原始课程需要在 GitHub 上执行操作,通过 GitHub Actions 自动检测进度。

本页面将所有步骤展示在一个页面中,方便您一次性阅读全部内容。

前往 GitHub 实操练习