什么是 Azure Repos?

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Azure Repos 是一组版本控制工具,可以用来管理代码。 不管软件项目是大还是小,都应尽快使用版本控制。

版本控制系统是一种可帮助跟踪一段时间内的代码更改的软件。 编辑代码时,告知版本控制系统生成文件快照。 版本控制系统会永久保存此文件快照,以便用户稍后能够根据需要进行查阅。 使用版本控制保存你的工作并协调整个团队的代码更改。

即使只有你一位开发人员,版本控制也有助你在修复 bug 和开发新功能时保持井然有序。 版本控制保留开发历史记录,使你可以轻松查看甚至回滚到代码的任何版本。

Azure Repos 提供了两种类型的版本控制:

Git

Git 是现今最常用的版本控制系统,并迅速成为版本控制标准。 Git 是分布式版本控制系统,也就是说,代码的本地副本就是一个完整的版本控制存储库。 通过这些功能齐全的本地存储库,无论脱机还是远程都能轻松工作。 先在本地提交工作,再将存储库的副本与服务器上的副本进行同步。

Azure Repos 中的 Git 是标准 Git。 你可使用所选的客户端和工具(例如适用于 Windows、Mac、合作伙伴的 Git 服务的 Git),同时使用 Visual Studio 和 Visual Studio Code 等工具。

连接你偏好的开发环境

将偏好的开发环境连接到 Azure Repos,以访问存储库并管理工作。 使用以下方法共享代码:

通过拉取请求评审代码

与团队一起评审代码,并确保更改在合并之前生成并通过测试。

使用策略保护分支

存储库中有几个关键分支(如 master 分支),团队依赖这些分支始终处于良好状态。 需要拉取请求才能对这些分支进行任何更改。 对于直接向受保护分支推送更改的开发人员,他们的推送将被拒绝。

向拉取请求添加条件,在关键分支中强制要求更高级别的代码质量。 你可设置来帮助保护关键分支的额外要求包括,对合并的代码进行完全生成,以及从多名评审者那里获得批准。

使用拉取请求状态扩展拉取请求工作流

使用拉取请求和分支策略,团队能够强制实施与查看代码和运行自动生成相关的许多最佳做法。 但许多团队还要求代码满足其他的要求和执行其他的验证。 为了满足这些单独的自定义需求,Azure Repos 提供了拉取请求状态。

拉取请求状态集成到 PR 工作流中。 它们允许外部服务以编程方式对代码更改进行签名,方法是通过将简单的成功/失败信息与拉取请求相关联。

使用分支隔离代码

分支是将实验性更改、风险性更改或机密性更改与原始代码库隔离开来的好方法。 分叉是存储库的完整副本,包括所有文件、提交和(可选)分支。 新分叉的行为类似于有人克隆了原始存储库然后将其推送到一个新的空存储库。

创建分支后,新文件、文件夹和分支不会在仓库之间共享,除非拉取请求携带它们。 准备好共享这些更改后,可以轻松使用拉取请求将更改推送回原始存储库。

TFVC

Azure Repos 还支持 Team Foundation 版本控制 (TFVC)。 TFVC 是一种集中式版本控制系统。 通常,团队成员的开发计算机上的每个文件只有一个版本。 历史数据仅在服务器上维护。 分支是基于路径的,并且在服务器上创建。

首先创建项目、配置工作区以及评审和共享代码。 可以使用以下任一客户端或 IDE:

了解更多