练习 - 设置 Azure DevOps 环境

已完成

在本部分中,需确保 Microsoft Azure DevOps 组织已设置好,可完成本模块的其余操作。

为此,将要:

  • 设置一个 Azure DevOps 项目供本模块使用。
  • 在 Azure Boards 中,将本模块的工作项移动到“Doing”列。
  • 确保你的项目是在本地设置的,以便可将更改推送到管道。

获取 Azure DevOps 项目

在这里,需确保 Azure DevOps 组织已设置好,可完成本模块的其余操作。 为此,可运行一个用于在 Azure DevOps 中创建项目的模板。

该学习路径中的模块形成了一个进程,在这一进程中,你将跟随 Tailspin Web 团队完成他们的 DevOps 之旅。 为便于学习,每个模块都有一个关联的 Azure DevOps 项目。

运行模板

若要在 Azure DevOps 组织中设置所有内容,请运行模板。

从 Azure DevOps 演示生成器站点执行以下步骤以运行模板。

  1. 选择“Sign In”并接受使用条款。

  2. 在“Create New Project”页面上,选择 Azure DevOps 组织,输入项目名称。 例如,输入“Space Game - web - Dependencies”。

  3. 选择“是,我想要为此存储库创建分支”,然后选择“授权”。 如果出现相关窗口,请授权访问你的 GitHub 帐户。

    重要

    需要选择此选项,模板才能连接到 GitHub 存储库。 选择此选项,即使已经为 Space Game 网站项目创建分支。 该模板使用现有分支。

  4. 选择“创建项目”。

    A screenshot of the Azure DevOps Demo Generator showing how to create a new project.

    运行模板需要一些时间。

  5. 若要在 Azure DevOps 中转到项目,请在项目生成完成后选择“导航到项目”。

重要

此模块中的清理 Azure DevOps 环境页面包含重要的清理步骤。 清理操作有助于确保免费生成分钟数不会耗尽。 即使未完成此模块,也要务必执行清理步骤。

设置项目的可见性

最初,GitHub 上 Space Game 存储库的分支设置为“公共”,而 Azure DevOps 模板创建的项目设置为“专用”。 GitHub 上的公共存储库可供任何人访问,而专用存储库仅供你和你选择与之共享的人员访问。 同样,在 Azure DevOps 上,公共项目为未经身份验证的用户提供只读访问权限,而专用项目要求授予用户访问权限并经过身份验证才能访问服务。

目前,出于本模块的目的,无需修改这些设置中的任何一个。 但是,对于个人项目,必须确定要授予其他人的可见性和访问权限。 例如,如果你的项目是开源的,你可能会选择将 GitHub 存储库和 Azure DevOps 项目都设为“公共”。 而如果你的项目是专有的,那么你通常会将 GitHub 存储库和 Azure DevOps 项目都设为“专用”。

稍后,你会发现以下资源有助于确定哪个选项最适合你的项目:

将工作项移动到“正在执行”状态

在本部分中,你将在 Azure Boards 上给自己分配一个与本模块相关的工作项。 你还会将工作项移动到“正在执行”状态。 在实际操作中,你和你的团队会在每次冲刺 (sprint) 或工作迭代开始时创建工作项。

以这种方式分配工作会为你提供一个工作清单。 工作清单可以让你团队中的其他人知道你的当前工作内容和剩余工作量。 它还可帮助团队对正在进行的工作强制实施限制,使团队一次不会负责太多工作。

回忆一下,团队已解决下面 7 个主要问题:

A screenshot of Azure Boards showing a backlog of issues.

注意

在 Azure DevOps 组织中,工作项是按顺序编号的。 在你的项目中,分配给每个工作项的编号可能与你在这里看到的不同。

在这里,将第六项“将模型数据移动到其自己的包”移动到“正在执行”列,并将自己分配给工作项。

请记住,“Move model data to its own package”涉及到将可重用代码移动到其自己的 NuGet 包,以便可以在多个应用之间共享包。

A screenshot of Azure Boards showing work item details for the Move model data to its own package issue.

设置工作项:

  1. 在 Azure DevOps 中,转到“Boards”,然后从菜单中选择“Boards”。

    A screenshot of Azure DevOps showing the location of the Boards menu.

  2. 从“将模型数据移动到其自己的包”工作项中,选择卡底部的向下箭头,然后将工作项分配给自己。

    A screenshot of Azure Boards showing the location of the down arrow.

  3. 将工作项从“待办”列移动到“正在执行”列

    A screenshot of Azure Boards, showing the card in the Doing column.

在本模块结束时,完成任务后将卡片移动到“Done”列。

在本地设置项目

在这里,你要在 Visual Studio Code 中加载 Space Game 项目、配置 Git、本地克隆存储库并设置上游远程库,以便可下载起始代码。

备注

如果你已在本地设置有 mslearn-tailspin-spacegame-web 项目,可移到下一部分。

打开集成终端

Visual Studio Code 附带一个集成终端,便于在同一个位置编辑文件和使用命令行。

  1. 启动 Visual Studio Code。

  2. 在“视图”菜单中选择“终端”。

  3. 在下拉列表中,选择“Bash”。 如果熟悉其他你想用的 Unix shell(例如 Zsh),请选择对应的 shell。

    A screenshot of Visual Studio Code showing the location of the Bash shell.

    通过终端窗口,可选择安装在系统上的任何 shell,如 Bash、Zsh 和 PowerShell。

    在此,你将使用 Bash。 适用于 Windows 的 Git 提供了 Git Bash,以便轻松运行 Git 命令。

    注意

    如果 Windows 中未列出“Git bash”选项,请确保已安装 Git,然后重启 Visual Studio Code。

  4. 运行 cd 命令导航到要使用的目录,例如主目录 (~)。 如果需要,可选择其他目录。

    cd ~
    

配置 Git

如果刚接触 Git 和 GitHub,那么首先需要运行一些命令,将你的标识与 Git 相关联并在 GitHub 中进行身份验证。

设置 Git 更详细地解释了此过程。

至少需要完成以下步骤。 从集成终端运行以下命令:

  1. 设置用户名
  2. 设置提交电子邮件地址
  3. 缓存 GitHub 密码

备注

如果已对 GitHub 使用双因素身份验证,请创建个人访问令牌,并在稍后出现提示时使用令牌代替密码。

将访问令牌当作密码一样对待。 请将其保存在安全的位置。

在 Visual Studio Code 中设置项目

在此部分中,你在本地克隆分支,因此你可进行更改和生成管道配置。

在本地克隆分支

现在,GitHub 帐户中拥有一个 Space Game Web 项目的副本。 现在,你将副本下载或克隆到计算机,以便能够使用它。

克隆与分支类似,都是存储库的副本。 克隆存储库时,可以执行更改,验证它们是否按预期工作,然后将这些更改上传回 GitHub。 还可以将其他经过身份验证的用户对 GitHub 的存储库副本所做的更改同步到本地副本。

将 Space Game Web 项目克隆到计算机

  1. GitHub 上转到 Space Game Web 项目的分支 (mslearn-tailspin-spacegame-web)。

  2. 选择“代码”。 然后从“HTTPS”选项卡选择显示的 URL 旁边的按钮,将该 URL 复制到剪贴板。

    Locating the URL and copy button from the GitHub repository.

  3. 在 Visual Studio Code 中,转到终端窗口。

  4. 在终端中,移动到要使用的目录,例如主目录 (~)。 如果需要,可选择其他目录。

    cd ~
    
  5. 运行 git clone 命令。 将此处显示的 URL 替换为剪贴板中的内容:

    git clone https://github.com/your-name/mslearn-tailspin-spacegame-web.git
    
  6. 移动到 mslearn-tailspin-spacegame-web 目录。 这是存储库的根目录。

    cd mslearn-tailspin-spacegame-web
    

设置上游远程库

远程库是一个 Git 存储库,团队成员可在这里进行协作(例如 GitHub 上的存储库)。 这里列出了你的远程并添加指向 Microsoft 存储库副本的远程,这样就可以获得最新的示例代码。

  1. 运行以下 git remote 命令可列出远程库:

    git remote -v
    

    你可以看到你对存储库具有提取(下载)和推送(上传)访问权限:

    origin  https://github.com/username/mslearn-tailspin-spacegame-web.git (fetch)
    origin  https://github.com/username/mslearn-tailspin-spacegame-web.git (push)
    

    Origin 指定你在 GitHub 上的存储库。 对另一个存储库中的代码创建分支时,通常将原始远程库(之前从中创建分支的远程库)命名为“上游”

  2. 运行以下 git remote add 命令可创建一个名为“upstream”的远程库,它指向 Microsoft 存储库:

    git remote add upstream https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web.git
    
  3. 再次运行 git remote 查看更改:

    git remote -v
    

    可看到,你仍然具有对存储库的提取(下载)和推送(上传)访问权限。 现在,你还对 Microsoft 存储库具有提取和推送访问权限:

    origin  https://github.com/username/mslearn-tailspin-spacegame-web.git (fetch)
    origin  https://github.com/username/mslearn-tailspin-spacegame-web.git (push)
    upstream        https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web.git (fetch)
    upstream        https://github.com/MicrosoftDocs/mslearn-tailspin-spacegame-web.git (push)
    

在文件资源管理器中打开项目

在 Visual Studio Code 中,终端窗口指向 Space Game Web 项目的根目录。 现在,你将从文件资源管理器中打开项目,以查看其结构并使用文件。

  1. 打开项目最简单的方法是在当前目录中重新打开 Visual Studio Code。 为此,可在集成终端中运行以下命令:

    code -r .
    

    可以在文件资源管理器中查看目录和文件树。

  2. 重新打开集成终端。 终端会将你带至 Web 项目的根目录。

如果 code 命令失败,则需要将 Visual Studio Code 添加到系统路径。 为此,请执行以下操作:

  1. 在 Visual Studio Code 中,选择 F1 或者“视图”>“命令面板”来访问命令面板。
  2. 在命令面板中,输入“Shell 命令: 在 PATH 中安装 "code" 命令”。
  3. 重复上一过程,在文件资源管理器中打开项目。

现在你已设置好,可从本地开发环境使用 Space Game 源代码和 Azure Pipelines 配置了。