Azure DevOps:Boards、Repos 与 Pipelines

FreeGuideOnline 最新 2026-06-30

Azure DevOps 入门指南:掌握 Boards、Repos 与 Pipelines

Azure DevOps 是一套完整的软件开发协作工具,涵盖从规划、编码、构建到部署的全生命周期。本教程将带您快速理解其核心服务:Azure Boards(敏捷规划)、Azure Repos(版本控制)与 Azure Pipelines(持续集成/持续交付),并手把手完成您的第一次端到端流程实操。


环境准备与项目初始化

在开始之前,您需要一个 Azure DevOps 组织。如果尚未拥有:

  1. 访问 dev.azure.com 并点击“免费开始使用”。
  2. 使用 Microsoft 账户登录,创建新组织,并为组织选择一个唯一的 URL(如 https://dev.azure.com/yourorg)。
  3. 创建新项目:点击“新建项目”,填写项目名称(如 MyFirstProject),可见性选择“私有”,版本控制选择“Git”,工作项流程可选“敏捷”模板。

项目创建后,您将进入项目概览页面,左侧导航栏即为主要服务入口。


Azure Boards:敏捷规划与工作跟踪

Azure Boards 用于规划、跟踪和讨论团队的工作。它以工作项为核心,支持看板、积压工作(backlog)和冲刺管理。

工作项与积压工作

工作项是跟踪工作的基本单位,类型包括史诗(Epic)、功能(Feature)、用户故事(User Story)、任务(Task)、Bug 等。积压工作是待办事项的有序列表。

创建您的第一个用户故事:

  1. 在左侧菜单选择 Boards > Backlogs
  2. 点击“新建工作项”,输入标题:“用户能查看商品列表”,按 Enter。
  3. 此时该故事出现在积压工作中。点击该条目,可在右侧窗格编辑详细信息:设置“业务价值”、添加描述、指派给团队成员。

看板可视化流程

看板(Boards)将工作项以卡片形式按状态列展示,如“新建议”、“已提交”、“进行中”、“已完成”。

  1. 进入 Boards > Boards,您将看到看板视图。
  2. 默认列可能不符合需求,自定义列:点击面板右上角的齿轮图标,在“列”选项卡中修改列名、添加工序限制(WIP Limit)以防止并行任务过多。
  3. 将积压工作中的用户故事拖拽至看板,并根据进度移动卡片。

将用户故事分解为任务:

  • 点击用户故事卡片上的“+”添加任务,如“设计商品列表 API”“实现前端展示”“编写单元测试”,并逐个拖拽至相应的状态列。

冲刺规划

若团队使用 Scrum,可启用冲刺(Sprint):

  1. Boards > Sprints,选择当前冲刺。
  2. 将积压工作项拖拽至冲刺中,设定容量。
  3. 通过“任务面板”实时查看进度,生成燃尽图监控健康度。

通过 Boards,整个团队对“谁在做什么、当前是什么状态”一目了然。


Azure Repos:云端 Git 仓库与协作

Azure Repos 提供无限制的私有 Git 仓库,支持代码评审、分支策略与语义化版本。

克隆仓库

从项目首页获取 Repos URL:

  1. 进入 Repos > Files,您将看到自动创建的 README。
  2. 点击右上角“克隆”,复制 HTTPS URL(例如 https://dev.azure.com/yourorg/MyFirstProject/_git/MyFirstProject)。
  3. 本地终端执行:
    git clone https://dev.azure.com/yourorg/MyFirstProject/_git/MyFirstProject
    cd MyFirstProject
    

若未配置凭据,系统会要求登录。可使用 Git Credential Manager 或生成个人访问令牌(PAT)。

基本提交与推送

创建新文件并首次提交:

echo "# MyFirstProject" >> README.md
git add .
git commit -m "初始化仓库,添加 README"
git push origin main

刷新网页 Repos > Files,即可看到更新。

分支与拉取请求

最佳实践是使用分支开发新功能,并通过拉取请求(Pull Request)合并代码。

git checkout -b feature/product-list

编写代码后提交推送:

git add .
git commit -m "实现商品列表 API"
git push origin feature/product-list

在 Azure Repos 网页上,点击“创建拉取请求”。填写标题和说明,指派审阅者。审阅者可在文件中逐行批注,批准后完成合并。

分支策略建议:使用主分支 main 保持稳定,开发分支 develop 集成功能,功能分支 feature/* 进行具体开发。

Repos 内建的仓库分析、文件内容搜索和提交历史使协作高效且可追溯。


Azure Pipelines:持续集成与持续交付

Pipelines 是自动化构建、测试和部署的引擎。支持 YAML 定义管道,或经典可视化编辑器(推荐使用 YAML)。

创建您的第一个生成管道(Build Pipeline)

我们以 Node.js 应用为例,自动化代码合规检查、测试和构建。

  1. 在项目根目录准备一个简单的 Node 应用结构与测试。

  2. 在根目录创建 .azure-pipelines/ci-pipeline.yml 文件(也可放于项目根目录 azure-pipelines.yml),内容如下:

    trigger:
      - main
      - feature/*
    
    pool:
      vmImage: 'ubuntu-latest'
    
    steps:
    - task: NodeTool@0
      inputs:
        versionSpec: '18.x'
      displayName: '安装 Node.js'
    
    - script: |
        npm install
        npm run lint
        npm test    
      displayName: '安装依赖、代码检查与测试'
    
    - task: PublishTestResults@2
      condition: succeededOrFailed()
      inputs:
        testResultsFormat: 'JUnit'
        testResultsFiles: '**/test-results.xml'
      displayName: '发布测试结果'
    
    - task: ArchiveFiles@2
      inputs:
        rootFolderOrFile: '$(System.DefaultWorkingDirectory)'
        includeRootFolder: false
        archiveType: 'zip'
        archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
      displayName: '归档构建产物'
    
    - task: PublishBuildArtifacts@1
      inputs:
        PathtoPublish: '$(Build.ArtifactStagingDirectory)'
        ArtifactName: 'drop'
      displayName: '发布产物'
    
  3. 进入 Pipelines > Pipelines,点击“创建管道”。选择“Azure Repos Git”,选取仓库,确认配置文件路径。保存并运行。

  4. 管道将自动触发:检查出代码、安装环境、执行 lint、测试,并将输出产物存档。运行详情可点击管道运行查看日志。

添加持续部署(Release Pipeline)

生成管道产出部署包后,通常连接发布管道以实现自动部署至 Azure 等环境。也可采用统一的多阶段 YAML 管道(推荐)。我们使用多阶段 YAML 来部署到 Azure App Service:

ci-pipeline.yml 末尾追加阶段:

- stage: Deploy
  condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))
  jobs:
  - job: DeployWeb
    pool:
      vmImage: 'ubuntu-latest'
    steps:
    - task: DownloadBuildArtifacts@0
      inputs:
        buildType: 'current'
        downloadType: 'single'
        artifactName: 'drop'
        downloadPath: '$(System.ArtifactsDirectory)'
    - task: AzureWebApp@1
      inputs:
        azureSubscription: 'YourServiceConnection'
        appName: 'your-web-app-name'
        package: '$(System.ArtifactsDirectory)/drop/$(Build.BuildId).zip'

这将确保只有 main 分支的提交在构建成功后自动部署。

服务连接:AzureWebApp 任务需要与 Azure 订阅建立服务连接,可在项目设置下的“Service connections”中创建。

测试与质量门槛

在管道中集成单元测试、代码覆盖率、安全扫描。例如,增加 SonarQube 或 WhiteSource 任务。可以配置分支策略,要求拉取请求必须通过成功的生成和最少审阅者批准才可合并,巩固代码质量。


三者联动:端到端工作流示例

让我们把 Boards、Repos、Pipelines 串联,走通一个完整的特性开发闭环:

  1. 规划:产品负责人在 Boards 中创建用户故事“用户能查看商品列表”,并分解为开发任务。
  2. 开发:开发人员将故事移至“进行中”,从 Repos 创建 feature/product-list 分支进行编码。
  3. 代码评审:开发完成,推送分支,创建拉取请求。团队异步 Code Review,Azure Pipelines 自动触发 PR 验证管道(上述 CI 步骤),测试通过、审阅批准后合并至 main
  4. 持续交付:合并到 main 触发完整的 CI/CD 管道,自动构建、测试,并部署到预生产环境。
  5. 完成与反馈:部署成功,工作项通过集成自动关联提交,状态改为“已完成”。团队在冲刺评审中收集反馈,在 Boards 中更新积压工作。

这种集成消除了手动交接,显著缩短交付周期。


进阶资源与下一步

  • Azure Test Plans:手动测试与探索测试工具,补充自动化测试。
  • Azure Artifacts:包管理,托管 NuGet、npm、Maven 等包源,与 Pipelines 深度集成。
  • 市场扩展:浏览 Visual Studio Marketplace 安装 Slack 通知、ChatOps、安全扫描等扩展。
  • 文档中心:访问微软官方学习路径“使用 Azure DevOps 实施 DevOps 开发流程”。

本教程聚焦于 DevOps 核心闭环——敏捷规划、源码协作与自动化交付。建议从工具入手,逐步优化流程与指标,让整个团队受益于 DevOps 文化与自动化能力。