快速上手

本教程将通过一个实际的 GitHub 仓库,带你动手体验 CodeRabbit 的使用流程。你将完成以下几个任务:

  1. 将 CodeRabbit 集成到你自己拥有的基于 GitHub 的仓库中。
  2. 观察 CodeRabbit 审查你发起的 Pull Request。
  3. 与 CodeRabbit 互动讨论它的审查结果。
  4. 引导 CodeRabbit 自动生成对 Pull Request 的改进建议。

完成本教程后,你将亲眼见证 CodeRabbit 的代码审查功能,并初步了解它的一些 AI 驱动能力。

如果你想了解更全面的介绍,请参阅 Introduction

💡 虽然本教程聚焦在 GitHub 上,但 CodeRabbit 也支持 GitLab、Azure DevOps 和 Bitbucket。详情见 Integrate with Git platforms


开始之前

在 GitHub 上新建一个私有仓库。将其命名为 coderabbit-test,其余设置使用默认即可。


将 CodeRabbit 与你的 GitHub 账户集成

按照以下步骤将 CodeRabbit 接入你的 GitHub 账户:

  1. 访问 CodeRabbit 登录页面
  2. 点击 Login with GitHub
  3. 点击 Authorize coderabbitai

CodeRabbit 会自动完成集成设置,几秒后你将看到 CodeRabbit 控制台界面。


将 CodeRabbit 添加到你的仓库

要将 CodeRabbit 添加到你的测试仓库中,请按照以下步骤操作:

  1. 在 CodeRabbit 控制台中点击 Add Repositories,会出现 GitHub 仓库授权对话框。
  2. 选择 Only select repositories(仅选择特定仓库)。
  3. Select repositories 菜单中选择你刚创建的 coderabbit-test 仓库。
  4. 点击 Install & Authorize

💡 CodeRabbit 会请求读取和写入仓库的权限,以便执行代码审查、问题管理和自动创建 Pull Request 等功能。它永远不会存储你的代码。详情见 CodeRabbit Trust Center

  1. 如果出现 Complete your signup 对话框,请填写必要信息以继续操作。

此时,CodeRabbit 已准备好与你的测试仓库配合使用。接下来我们来演示其核心功能:自动代码审查。


让 CodeRabbit 执行代码审查

下面我们将通过一次实际操作发起一个 Pull Request,添加一个简单但存在小问题的 Python 库,触发 CodeRabbit 的分析与审查功能。

请使用你平时的 Git 工作流程,在 coderabbit-test 仓库中完成以下步骤:

1.

创建一个名为 add-utils 的分支。

2.

add-utils 分支中创建一个新文件 simple_utils.py,内容如下:

  1. # simple_utils.py - A tiny utility library
  2. def reverse_string(text):
  3. """Reverses the characters in a string."""
  4. return text[::-1]
  5. def count_words(sentence):
  6. return len(sentence.split())
  7. def celsius_to_fahrenheit(celsius):
  8. return (celsius * 9/5) + 32

3.

将该文件提交到 add-utils 分支。提交信息可以自由填写。

4.

创建一个 Pull Request,尝试将 add-utils 分支合并到 main 分支。Pull Request 的描述内容也可以随意填写。

几秒钟后,CodeRabbit 会以 @coderabbitai 身份在该 Pull Request 页面中作出回应,执行以下操作:

  • 如果你没有写 Pull Request 摘要,它会自动添加一个。
  • 它会发布一条名为 Walkthrough 的评论,对 Pull Request 内容进行分析讲解。
  • 它会附上一条详细的代码审查评论。

评论示例如下图所示:

代码审查评论示例

这表示 CodeRabbit 检测到这个 Python 库存在一些问题,例如缺少 docstring(文档注释)和缺乏输入校验。它在评论中指出这些问题,并建议如何改进。


询问 CodeRabbit 更多信息

当 CodeRabbit 审查完一个 Pull Request 后,你可以继续和它对话,深入讨论审查内容。你也可以给它发送一些特殊命令,请它执行具体操作,比如生成代码修改建议。

1.

在该 Pull Request 下新增一个评论,内容如下:

  1. @coderabbitai Why do all of these functions need docstrings? Isn't it obvious enough what they do?

几秒钟后,CodeRabbit 会回复解释它推荐添加 docstring 的原因。回复内容可能如下所示:

你说得对,这些函数的名称本身就很清晰,不加 docstring 也能理解它们的作用。

不过,docstring 在某些场景下仍然很有帮助,比如:提升 IDE 提示、生成文档、方便其他开发者阅读维护。

对于非常简单的函数来说,加 docstring 确实有点多余。这最终是一个风格选择问题,取决于项目要求。

如果你希望在这个项目中跳过对这类函数的 docstring 要求,我可以调整我的审查偏好。你希望我现在就这样做吗?

此时,CodeRabbit 正在询问你是否希望它在这个仓库中今后不再要求 docstring。接下来,我们改为让它直接帮我们补上 docstring。

2.

再添加一条评论:

  1. @coderabbitai generate docstrings

几秒后,CodeRabbit 会自动执行以下操作:

  • 基于 add-utils 分支创建一个新分支;
  • 向该新分支提交包含自动生成 docstring 的修改;
  • 创建一个新的 Pull Request,提议将这些改动合并回 add-utils 分支。

清理

你可以继续在测试仓库中尝试更多 CodeRabbit 功能。当你完成试验后,可以删除该仓库。

现在你已经准备好将 CodeRabbit 添加到其他项目仓库中,并让它帮你审查真实的 Pull Request。