Global `circle.yml` settings/Don't build if `circle.yml` doesn't exist [Project Settings]


Let’s say we’re only trying to work/considering Circle and have a lot of branches like v1.1.1 in our repo where we don’t want new builds/PR statuses.

Currently there is no way to disable builds for these branches, except of placing circle.yml file in all existing branches (not an option at all).

Solution #1 (easy)

Option in Web UI to disable the builds if circle.yml doesn’t exist.

There is exactly the same option in Travis and it’s useful.

Solution #2 (robust)

Ability to specify in Project Settings entire circle.yml contents (just copy-paste), which will be used by defaul for entire project.

  • If there is no circle.yml - default file from Settings will be used
  • If branch has circle.yml - use that file

Exactly the same approach follows ScrutinizerCI

Trigger build for branch only if .circleci/config.yml exists

Solution #2 brings good flexibility and most likely will solve other user requests.

For example if I enable Chat Notifications in Project Settings there is no way to disable notifications for branches I don’t need, - only placing circle.yml file just everywhere, in all branches.
Another burden will be synchronizing circle.yml between all branches.

Global circle.yml brings more options to control this.


Thank you very much for your suggestion—we’ll see what we can do about this.


This seems absolutely vital. It’s the first thing I turn on in Travis CI. Without this feature, Circle CI isn’t compatible with tools like git-annex, which creates branches to store information. I don’t want any of these branches to show up in Continuous Integration, nor do I have control over them to add a circle.yml to have them ignored! There must be global options for ignoring branches.


This would be incredibly useful. I don’t have a circle.yml on my gh-pages branch - I want to avoid building a branch at all if there is no circle.yml.