Close

了解 Bitbucket Cloud 中的代码审查

目标

创建存储库并将某人作为审查者添加到您的拉取请求中,以开始协作处理您的代码。

免责声明:本教程的以下部分概述了在拉取请求中添加审查者(或团队成员)的步骤,这样您就可以在 Bitbucket Cloud 中协作处理您的代码。如果您不与队友合作或者此时不需要添加审查者,请转到下一个教程:学习在 Bitbucket Cloud 中创建分支

任务简介

到目前为止,您是唯一一个在存储库和代码中工作的人。如果您想让别人审查您的代码并提供反馈该怎么办?无论您与审查者是在同一个办公室还是异地,只需在拉取请求中添加审查者即可。

时间

15 分钟

观众

  • 您有一定的 Bitbucket Cloud 使用经验。如果不是,请尝试我们的初学者教程之一。
  • 对于那些喜欢在 Bitbucket Cloud 中使用 Git GUI 的人

关于分支和拉取请求

当您在拥有多个 Bitbucket 用户的团队中工作时,您需要将自己的代码集与主代码库分开工作。分支可以让您做到这一点。分支代表您的存储库的一个独立开发线路。可以把它想象成一个全新的工作目录、暂存区域和项目历史。创建分支后,您可以处理并向该分支提交代码,从 Bitbucket 拉取更新以保持分支处于最新状态,然后将所有工作推送到 Bitbucket。

在 Bitbucket 的分支上变更代码后,就可以创建拉取请求,这是进行代码审查的地方。您的队友将通过反馈和问题对您的代码进行评论,并最终(希望)批准拉取请求。获得足够的批准后,合并拉取请求以将您的分支合并到主代码中。


创建 Git 代码库


您刚接触 Bitbucket,需要完成入门指南,其中一部分涉及更新您的欢迎软件包并获得批准。

1. 在全局侧边栏中单击 +,然后在创建下选择存储库

2. 确保您创建的团队是存储库负责人

3. 为项目名称存储库名称输入所需的任何内容。如果您什么都想不出来,您觉得欢迎软件包和第一印象分别都怎么样。

4. 从是否包括自述文件?中,选择一个选项。

5. 从版本控制系统中,为要创建的存储库类型选择一个选项。如果您不确定,请保持原样。

6. 单击创建存储库,您将进入全新存储库的源代码视图。

7. 从源代码中,选择 > 添加文件

8. 将文件命名为 survey.html,然后复制此代码并将其粘贴到主文本区域。

Bitbucket 徽标
查看解决方案

了解 Bitbucket Cloud 的 Git

Git 徽标
相关资料

了解 Bitbucket Cloud 的分支

\<\!DOCTYPE html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <style media="screen" type="text/css">
 body {
 margin: auto;
 width: 700px;
 color: #FFFFFF;
 font-family: Arial, sans-serif;
 background-color: #172B4D;
 }
 body>h1 {
 margin: 50px;
 font-size: 50px;
 text-align: center;
 color: #0052CC;
 }
 </style>
</head>
<body>
 <h1>Team up in space</h1>
 <p>
 Welcome to the team! You've made it this far so we know that you've got the potential to do great things. Because you're going to be collaborating with other awesome people, anything you add needs to be code reviewed and approved. That's just how a team works! You should have already created a branch and checked it out locally. If you haven't, go back to the tutorial and do that now. We'll be here.
 </p>
 <p>
 Because you're on your own branch, you can go crazy. Spice up this file any way you like. Add more files to this repository if you see fit. If want to take it slow and are just here to learn about pull requests, you can use this opportunity to fill out our short questionaire.
 </p>
 <br>
 <p>
 <b>Question 1</b>: Have you used pull requests before?
 </p>
 <p>
 <b>Answer 1</b>: **** Your answer here **** </p>
 <p>
 <b>Question 2</b>: Why do you want to learn about code review?
 </p>
 <p>
 <b>Answer 2</b>: **** Your answer here **** </p>
 <p>
 <b>Question 3</b>: Who do you plan to work with on Bitbucket? </p>
 <p>
 <b>Answer 3</b>: **** Your answer here **** </p>
</body>
</html>

9. 单击提交,然后从对话框中再次单击提交

您的存储库现在看起来很不错,您可以四处浏览一下。

克隆新分支并对其进行更改


当您知道要在合并前添加审查者来审查和批准您的代码时,您很可能在创建分支之前已经克隆了存储库。所以这就是在您建立自己的分支之前我们要先做的事情。

如果您使用的是命令行

步骤 1. 将代码库克隆到本地系统

1. 在存储库中,单击右上角的克隆按钮。Bitbucket 将显示克隆此存储库对话框。默认情况下,克隆对话框将协议设置为 HTTPSSSH,具体取决于您的设置。因此,您无需更改默认协议。

克隆存储库

2. 复制克隆命令。

3. 在终端窗口中,切换到要克隆存储库的本地目录。

$ cd ~/<path_to_directory>

4. 粘贴您从 Bitbucket 复制的命令,例如:

$ git clone https://breezy@bitbucket.org/powerstars/first-impressions.git

Cloning into 'first-impressions'...
Password for 'https://breezycloud@bitbucket.org': 
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.

欲了解更多详情,请观看我们的克隆视频,看看它是如何完成的:

第 2 步. 创建分支并在本地拉取

现在您的存储库已经全部设置好了,接下来是有趣的部分。您可以在本地或通过 Bitbucket 创建分支。为了本教程的目的,我们从 Bitbucket 创建一个。

1. 在左侧导航栏中单击分支。您会看到您已经有一个分支了——您的主分支,main 分支。

2. 单击右上角的创建分支

3. 创建分支后,需要在本地系统上查看。Bitbucket 为您提供了一个提取和签出命令,您可以将其复制并粘贴到命令行中,类似于以下内容:

$ git fetch && git checkout my-updates

Password for 'https://breezycloud@bitbucket.org': 
From https://bitbucket.org/planetbreezycloud/first-impressions
 * [new branch]      my-updates -> origin/my-updates
Branch 'my-updates' set up to track remote branch 'my-updates' from 'origin'.
Switched to a new branch 'my-updates'

如您所见,您已经在本地切换到新分支,这样您就可以处理和推送单独的代码行。

第 3 步. 对分支进行更改

现在,轮到您对存储库进行一些更改了。就像文件中提到的那样,您可以随心所欲地疯狂或简单。更改 CSS。添加更多文件。创作一部太空歌剧。或者干脆回答问题。

1. 使用文本编辑器打开 survey.html 文件(或由您命名的文件)。

2. 进行或大或小的更改,然后保存并关闭文件。

3. 在终端窗口中,除非您做了一些更改,否则您应该仍然在存储库目录中。使用 git status 显示存储库的状态。您应该看见您修改的 survey.html文件。如果您添加或修改了其他文件,您也会看到这些文件。

$ git status
On branch my-updates
Your branch is up-to-date with 'origin/my-updates'.
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
        modified:   survey.html
no changes added to commit (use "git add" and/or "git commit -a")

4. 使用 git add 在本地添加您的更改:

$ git add survey.html

5. 使用 git commit -m "您的提交信息" 在本地提交您的变更:

$ git commit -m "Answered questions"
[my-updates 7506040] Answered questions
 1 file changed, 3 insertions(+), 3 deletions(-)

6. 输入 git push origin 将变更推送到您在 Bitbucket 上的分支,然后输入密码完成推送变更。

$ git push origin my-updates

Password for 'https://breezycloud@bitbucket.org': 

Counting objects: 3, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (3/3), done.

Writing objects: 100% (3/3), 350 bytes | 350.00 KiB/s, done.

Total 3 (delta 1), reused 0 (delta 0)

To https://bitbucket.org/planetbreezycloud/first-impressions.git

   454ccaf..7506040  my-updates -> my-updates

Branch main set up to track remote branch main from origin.

7. 在 Bitbucket 中,单击存储库的源代码页面。您应该会在下拉菜单中看到这两个分支。您对 my-updates 所做的任何其他提交也将显示在该分支上。

如果您使用的是 Sourcetree

步骤 1. 将代码库克隆到本地系统

我们把它放到您的本地系统上,这样您就可以真正开始处理它了。

1. 在存储库中,单击全局侧边栏中的 +,然后在开始工作下选择克隆此存储库

克隆存储库

2. 单击在 Sourcetree 中克隆按钮。

3. 在新增克隆窗口中,将目标路径更新为 /first-impressions/

克隆分支

4. 单击克隆按钮。

要了解它是如何完成的,请在此处观看我们视频中的“克隆存储库”部分:

第 2 步. 创建分支并在本地拉取

现在您的存储库已经全部设置好了,接下来是有趣的部分。因为分支不仅是 Bitbucket 的概念,所以您可以在本地创建一个。但是,为了本教程的目的,我们从 Bitbucket 创建一个。

1. 在左侧导航栏中单击分支。您会看到您已经有一个分支了——您的 main 分支。

2. 单击右上角的创建分支

3. 输入分支名称,然后单击“创建”。如果您不确定要给分支起什么名字,可以选择像 my-updates 这样的名字。

4. 创建分支后,需要在本地系统上签出。为此,请单击在 Sourcetree 中签出按钮。

5. 在 Sourcetree 的签出现有内容对话框中,单击签出

现在您在 Bitbucket 中有一个分支,它已签出到您的本地系统,允许您处理和推送单独的代码行。

第 3 步. 对分支进行更改

现在,轮到您对存储库进行一些更改了。就像文件中提到的那样,您可以随心所欲地疯狂或简单。更改 CSS。添加更多文件。创作一部太空歌剧。或者干脆回答问题。

1. 在 Sourcetree 的存储库中,单击在 Finder 中显示按钮。

Sourcetree 查找器

2. 使用文本编辑器打开 survey.html 文件(或由您命名的文件)。

3. 进行或大或小的更改,然后保存并关闭文件。

4. 打开 Sourcetree,注意您的存储库现在已经有了未提交的变更

未提交的分支

5.(仅限 Git)将文件添加到暂存区域:

1. 选择未提交的变更行。

2. 在未暂存文件列表中,在 survey.html 文件(以及任何其他包含未提交变更的文件)旁边放置检查标志。

确认阶段

3. 在确认阶段?对话框中,单击确定

6. 单击顶部的提交按钮以提交文件。

7. 在提供的空白处输入提交消息,例如已回答的问题。

8. 单击消息框下面的提交按钮。当您切换回视图时,您会看到文件已提交,但尚未推送到 Bitbucket 存储库。

9. 在 Sourcetree 中,单击推送按钮以推送您提交的更改。

10. 在出现的对话框中,单击确定将带提交的分支推送到 Bitbucket。

11. 在 Bitbucket 中,单击存储库的源代码页面。您应该会在下拉菜单中看到这两个分支。您对 my-updates 所做的任何其他提交也将显示在该分支上。

创建拉取请求并合并变更


要在合并之前添加审查者来检查和批准您的代码,下一步是创建拉取请求。除了可以审查代码外,拉取请求还会显示您的变更与原始存储库的对比(也称为差异),并提供了一种在准备就绪时合并代码的简便方法。

第 1 步. 创建拉取请求

选择一个分支以创建拉取请求,您已经有一个了。

1. 在您的存储库中,单击全局侧边栏中的 +。然后,单击开始工作下的创建拉取请求
Bitbucket 显示请求表单。

2. 完成表单:

1. 您已经自动有了标题,是您的最后一条提交消息。

2. 如果您愿意,可以添加描述

(可选 - 添加审查者)如果您需要有人在合并之前审查和/或批准您的代码,请将他们添加到审查者字段中。您可以看到 Breezy Cloud 被添加为下方示例拉取请求的审查者。

要将审查者添加到拉取请求中,必须首先通过将用户添加到群组来授予他们对存储库的访问权限。有关更多信息和详细步骤,请参阅以下内容:向用户和群组授予存储库访问权限注意:您可以随时创建拉取请求,并稍后添加审查者。

完成后,表单将如下所示:

PR 审核

3. 单击创建拉取请求

第 2 步. 合并您的拉取请求

没那么快,您可能已经注意到顶部的合并按钮。单击按钮之前,您需要等待变更获得批准。除了您的队友收到的电子邮件通知外,他们还会看到拉取请求出现在您的工作仪表板上的待审查拉取请求下方。

您的工作仪表板

单击批准按钮之前,审查者可以在拉取请求中查看差异并添加评论以开始讨论。

有人批准您的拉取请求时,您会收到一封电子邮件通知。获得所需的批准后(在本例中只需要一个!),您可以合并。在拉取请求中,单击合并。仅此而已!如果您想看看您的分支与 main 分支合并时的样子,请单击提交来查看提交树。

提交
分享此文章

推荐阅读

将这些资源加入书签,以了解 DevOps 团队的类型,或获取 Atlassian 关于 DevOps 的持续更新。

人们通过满是工具的墙进行协作

Bitbucket 博客

Devops 示意图

DevOps 学习路径

与 Atlassian 专家一起进行 Den 功能演示

Bitbucket Cloud 与 Atlassian Open DevOps 如何协同工作

注册以获取我们的 DevOps 新闻资讯

Thank you for signing up