"only if" 是 GitLab CI/CD 的一个条件语句,用于在执行某个任务或阶段之前检查一个条件是否满足。如果你在 `.gitlab-ci.yml` 文件中使用 `only if`,它会确保只有当指定的条件为真时,该任务才会执行。 例如,你可能想要在某个环境变量存在或者某个命令返回非零退出状态时才运行一个任务。以下是一个例子: ```yaml stages: - deploy deploy_to_production: stage: deploy script: - echo "Deploying to production..." - apt-get update - apt-get install -y nginx only: - tags # 使用 only if 条件 only_if: [ "$CI_COMMIT_TAG" != "" ] ``` 在这个例子中,`deploy_to_production` 任务只会当有标签提交(tagged commit)时执行。如果没有标签,即使设置了 `deploy` 阶段,这个任务也不会运行。 确保在使用 `only if` 时提供一个可以被 GitLab CI/CD 系统理解的条件表达式,通常使用 shell 命令和条件操作符(如 `if`、`-eq`、`-ne` 等)。 [2024-06-12 14:46:14 | AI写代码神器 | 267点数解答]