# 自动运行构建

> Set up automatic builds in Unity Build Automation for continuous integration and scheduled workflows.

在 Build Automation 中，您可以将项目配置为在向代码仓库推送更改时自动进行构建，也可以设置根据定义的计划定期构建。这些功能相互独立，适用于不同的工作流程。


**UBA - 构建目标配置 - 调度:**
!["UBA - 构建目标配置 - 调度"](/api/media?file=/build-automation/media/images/build-automation/configuration-scheduling.png "UBA - 构建目标配置 - 调度")

## 设置自动构建##set-up-automatic-builds

**自动构建**功能会在您向代码仓库提交更改时自动触发新的构建。这确保您的项目始终使用最新更新进行构建：

* 每次向代码仓库推送新更改时都会触发构建。
* 如果启用了 **Auto-cancel（自动取消）**，则在推送新更改时，任何待处理或正在进行的构建都会自动取消，从而确保仅构建最新的更改。

自动构建功能非常适合需要持续集成的工作流程，因为它无需手动干预即可确保为最新更改触发构建。

## 设置计划构建##set-scheduled-builds

计划构建允许您按照设定的时间间隔自动启动构建，而无论代码仓库活动如何。计划构建有助于确保进行定期构建，例如夜间构建或计划测试。

配置计划构建时，可以指定以下详细信息：

* 频率：Once（一次）、Daily（每天）、Weekly（每周）、Monthly（每月）、Yearly（每年）或使用 Cron 表达式。
* 构建的开始日期和时间，或者 Cron 表达式。
* 是否使用构建缓存。

计划构建非常适合维护定期构建周期，并确保即使没有推送任何新更改，也能在特定时间获得可靠的构建。

一个项目可以创建的计划数量没有限制，但每个构建目标只能设置一个计划。要为项目创建多个计划，您需要创建额外的构建目标。

## 使用 Build Automation API 运行构建##run-builds-using-build-automation-api

除了自动构建和计划构建外，您还可以使用 Build Automation API 以编程方式触发构建。此方法非常适合需要自定义构建触发器的工作流程，例如将构建过程与外部系统集成，或者需要更精细地控制构建的触发方式和时间。

Build Automation API 允许您执行以下任务：

* 为特定构建配置触发构建
* 检查构建尝试的状态
* 取消构建
* 访问构建历史记录

有关详细的 API 文档和其他功能，请参阅 [Build Automation API 文档](../build-automation-api)。
