9

我实际上正在讨论 Travis-CI 的一些问题。假设我在 Github 上有一个存储库,有多个分支。我只需要验证和构建master 分支,而忽略任何其他分支。查看 Travis 文档,似乎我必须.travis.yml在存储库的每个分支中推送一个文件。但是所有这些 yml 文件都应该具有相同的内容吗?换句话说,我是否必须在每个分支的每个 travis.yml 文件的顶部都有这个:

在每个 yml 文件中

branches:
  only:
    - master

在我的 yml 文件中,我希望在 master 分支中运行一个运行规范测试的脚本,该脚本使用 travis 验证构建。这些规范测试是写在只存在于主分支中的文件中,而不是其他的,因为我在那里不需要它们。所以,我想我还必须跳过在每个不同于 master 的分支中推送的 yml 文件中的脚本部分?如下:

#YAML file (master branch)
branches:
  only:
    - master

# run the script
script: "tsc -f specs/*"

在其他一些分支:

#YAML file (any other branch)
branches:
  only:
    - master

感谢阅读。

4

1 回答 1

9

是的,您目前必须在.travis.yml每个分支中指定构建分支。

不,脚本行不必包含在每个分支的文件中。

编辑:您可能也有兴趣观察travis-ci 的此功能请求

更新.travis.yml:自 2014 年 3 月起,您可以在 travis-ci.org 上的存储库设置中禁用没有文件的分支/提交的构建。该选项(当前)称为“仅使用 .travis.yml 文件构建提交”,另请参阅此博客文章

于 2013-02-07T08:52:35.947 回答