草稿拉取请求和新工作项文本编辑器 - Sprint 143 更新

在 Azure DevOps 的 Sprint 143 更新 中,我们引入了一 个新的工作项文本编辑器 ,它更强大且更易于使用。 这是我们努力实现产品现代化和改进体验的一部分。 在Azure Repos,草稿拉取请求允许你创建尚未准备好完成的拉取请求,因此它们不能意外完成。 我们还在 Azure Artifacts 中发布了一些新功能,包括 排除项目上传中的文件和 获取 包来源信息的功能。

有关详细信息,请查看下面的 功能 列表。

功能

常规:

Azure Boards:

Azure Repos:

Azure Pipelines:

Azure Artifacts:

常规

REST API 版本 5.0

每个 API 请求都应包含一个 API 版本。 但是,如果在没有 API 版本的情况下向以前发布的终结点发出 REST 请求,则此部署中该请求的默认版本将从 4.1 切换到 5.0。 有关 REST 和 API 版本的详细信息,请参阅Azure DevOps Services REST API 参考

Azure Boards

新建工作项文本编辑器

我们很高兴地宣布在工作项窗体上正式发布新的文本编辑器。 我们的文本编辑器已经过时了一段时间,这种新体验将是一个巨大的改进。 新的编辑器更现代且功能更强大,带来了新功能,包括调整图像大小、代码片段、适用于 Mac 和 Windows 的键盘快捷方式以及完整的表情符号库。

可以在工作项窗体上的任何文本字段中使用此控件,包括在讨论中。 下面是可以期待看到的新体验:

文本编辑器

下面,可以看到代码片段体验。 通过此添加,可以轻松且清楚地讨论工作项表单中的代码。

文本编辑器代码

我们确实希望开始使工作项更具社交性。 我们在该旅程中的第一步是将表情符号支持引入到文本字段和工作项的讨论中。 使用表情符号,您将能够将您的描述和评论带入生活,并赋予它们更多的个性!

此编辑器完成的工作开放源代码,因此请随时在 GitHub https://github.com/Microsoft/roosterjs上检查 roosterjs 存储库。

Azure Repos

改进的分支选取器

Azure Repos 中的大多数体验要求选择一个存储库,然后选择该存储库中的一个分支。 为了为具有大量分支的组织改进此体验,我们推出了新的分支选取器。 现在通过选取器可以选择收藏夹分支或快速搜索分支。

分支选取器

草稿拉取请求

为了阻止拉取请求在已准备就绪之前完成以及轻松地创建可能不涉及任何人的正在进行的工作,我们现在支持草稿拉取请求。

在创建拉取请求时,可以通过从创建按钮下拉列表中选择创建为草稿来创建草稿拉取请求。

创建 PR 草稿

创建了草稿拉取请求之后,便会在标题旁看到一个指示其状态的徽章。

指示状态的锁屏提醒。

默认情况下,草稿拉取请求不包括审阅者或运行内部版本,但允许手动添加审阅者并运行生成。 若要将拉取请求提升为普通拉取请求,只需单击“拉取请求详细信息”页中的“发布”按钮即可。

Azure Pipelines

使用标记触发 YAML 管道

将标记添加到提交时,可以触发 YAML 管道。 对于工作流包含标记的团队来说,这非常有用。 例如,当提交标记为“上次已知正常”时,可以启动进程。

可以指定要包含和排除的标记。 例如:

trigger:
  tags:
    include:
    - releases/*
    exclude:
    - releases/old*

将 设置为在拉取请求更新时自动取消现有管道

默认情况下,将新提交推送到同一 PR 时,将取消拉取请求 (PR) 触发的管道。 在大多数情况下,这是可取的,因为通常你不希望继续运行过时代码的管道。 如果不需要此行为,可以将 autoCancel: false 添加到 PR 触发器。

pr:
  branches:
    include:
    - main
    - releases/*
  autoCancel: false

内联声明容器资源

以前,我们需要在 YAML 管道中声明容器资源,然后按名称引用它们。 我们现在提供内联语法,用于不多次引用容器的情况。

jobs:
- job: my-container-job
  container:
    image: mcr.microsoft.com/dotnet/core/runtime:latest

对新项目的默认权限的更改

到目前为止,项目参与者无法创建管道,除非他们显式被授予 “创建生成定义” 权限。 现在,对于新项目,所有团队成员都可以轻松创建和更新管道。 此更改将减少加入 Azure Pipelines 的新客户的摩擦。 始终可以更新 参与者 组的默认权限并限制其访问权限。

部署到部署组中失败的目标

默认情况下,重新部署以前失败的运行时, Azure Pipelines 用于重新运行所有作业。 现在,可以通过在部署时配置 部署选项 来替代此行为。 通过选择“ 所有作业并将限制为部署组中失败的目标 ”选项,重新运行将运行所有作业,并将部署跳过到已是最新的目标。

部署到部署组中失败的目标。

支持基础结构即代码

我们将向 Azure DevOps 项目添加对基础结构即代码 (IaC) 的支持。 IaC 是一个使用某种声明性方法管理和预配计算基础结构的过程,同时使用定义文件而不是传统的交互式配置工具设置其配置。 这样,就可以将解决方案中的资源作为一个组使用。 可以使用用于部署的模板来部署、更新或删除解决方案的所有资源。 此模板可用于不同的环境,例如测试、过渡和生产。

Azure Artifacts

排除项目上传中的文件

以前,若要从已发布的项目中排除文件,必须将文件复制到暂存目录,删除要排除的文件,然后上传。 现在,通用包和管道项目将在要上传到的目录中查找名为 .artifactignore 的文件,并自动排除这些文件,无需暂存目录。

包的源信息

通过此更新,我们可以更轻松地了解包的来源,包括发布包的人员或内容以及它们来自哪些源代码。 对于使用 npmNuGet 和 .NET Core、Python) 的 孪生身份验证 (以及 通用包 任务发布的所有包,会自动填充此信息。

包的出处信息。

Azure 项目 REST API 文档更新

通过此 sprint 的更新,我们将推出对 Azure Artifacts REST API 文档的大量更新,这应该可以更轻松地在自己的应用程序中针对它们进行开发。

后续步骤

注意

这些功能将在未来两到三周内推出。

阅读下面的新功能,并转到 Azure DevOps 亲自试用。

如何提供反馈

我们很想听听你对这些功能的看法。 使用反馈菜单报告问题或提供建议。

提出建议

你还可以在 Stack Overflow 上获得社区的建议和问题的答案。

此致

杰里米·埃普林