练习 - 设置 Azure DevOps 环境

已完成

在本单元中,请确保已设置 Microsoft Azure DevOps 组织以完成本模块的其余部分。

若要执行此配置,请执行以下作:

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

获取 Azure DevOps 项目

在此,请确保您的 Azure DevOps 组织已设置好,以便完成本模块的其余部分。 为达成此设置,可运行一个用于在 Azure DevOps 中创建项目的模板。

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

运行模板

运行一个模板来设置 Azure DevOps 组织。

  1. 在 Visual Studio 或所选的 IDE 中获取并运行 ADOGenerator 项目

  2. 当系统提示 输入模板列表中的模板编号时,输入 27使用 Azure Artifacts 管理生成依赖项,然后按 Enter

  3. 选择身份验证方法。 可以 设置和使用个人访问令牌(PAT) 或使用设备登录。

    注意

    如果设置了 PAT,请确保授权必要的范围。 对于本模块,可以使用 完全访问权限,但在实际情况下,应确保仅授予必要的范围。

  4. 输入 Azure DevOps 组织名称,然后按 Enter

  5. 如果出现提示,请输入 Azure DevOps PAT,然后按 Enter

  6. 输入项目名称,例如 太空游戏 - web - 依赖项,然后按 Enter

  7. 创建项目后,在浏览器中访问 https://dev.azure.com/<your-organization-name>/ 的 Azure DevOps 组织并选择该项目。

为存储库创建分支

如果尚未创建,请创建 mslearn-tailspin-spacegame-web 存储库的分支。

  1. 在 GitHub 上,转到 mslearn-tailspin-spacegame-web 存储库。

  2. 选择屏幕右上角的“分支”

  3. 选择 GitHub 帐户作为“所有者”,然后选择“创建分支”。

重要

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

设置项目的可见性

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

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

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

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

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

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

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

Azure Boards 的屏幕截图,其中显示了问题的积压工作 (backlog)。

注意

在 Azure DevOps 组织中,工作项是按顺序编号的。 在你的项目中,分配给每个工作项的数字可能与你在此处看到的数字不匹配。

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

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

Azure Boards 的屏幕截图,其中显示了“将模型数据移动到其自己的包”问题的工作项详细信息。

设置工作项:

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

    Azure DevOps 的屏幕截图,其中显示了“Boards”菜单的位置。

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

    Azure Boards 的屏幕截图,其中显示了向下箭头的位置。

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

    Azure Boards 的屏幕截图,显示了“Doing”列中的卡片。

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

在本地设置项目

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

注意

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

打开集成终端

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

  1. 启动 Visual Studio Code。

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

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

    Visual Studio Code 的屏幕截图,显示了 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 复制到剪贴板。

    在 GitHub 存储库中找到 URL 和“复制”按钮。

  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 配置了。