How do I configure Jenkins to build all branches except a few which I exclude?

We have some code in git and I started setting up Jenkins to grab our branches and try a compile. It seems that a few of the branches may have begun to rot in the years since they were last built, as they fail to finish a make.

I would like to build all branches that are found, except for a list of excluded ones. Is this possible in Jenkins? This will let me get things up and running, then come back to enable more branches as I try to fix them.

  • Dealing with Git Corrupt objects and 'has dot git' in tree
  • Syncing sftp file system with version control
  • Heroku permission denied / unable to connect to heroku api
  • Compilation error - package not found in Redhat “Openshift” application
  • How to write a git hook to restrict writing to branch?
  • Deploy Orchard.Source to Azure via GIT
  • What I have tried so far

    Regex with lookahead

    Looking at the ‘Git > Branches to build’ option I was hopeful that I could replace the default ‘**’ wildcard with a :. A bit of digging about and double checking with suggested that the following might do what I wanted.


    Now there is an assumption here about the regex engine running in the background. I would hope it might understand lookahead, but if it does not that explains why this method fails. It seems to build all the branches, including the one I am try to exclude. Maybe I just need to find some more debug?

    Looked for similar questions here

    I came across Jenkins/Hudson Build All Branches With Prioritization which seemed to contain a possible solution in that some added an inverse option to branch matching sounds like what I need. Sadly this does not seem to be in the version of Jenkins I have, which is odd as 2011 is a long time ago.

    The System I Am Using

    Ubuntu LTS 14.04. Jenkins ver. 1.611. GNU tool chains to make C/C++ code.

  • Visual Studio Team Services: delete repository
  • In git, what are some good conventions to format multiple comments to a single commit
  • Jenkins Git Publisher: How to commit code back to master after build?
  • Git-diff to HTML
  • git-ftp resmo git-ftp.log
  • What do all the changes to .xuserstate and .xcscheme files represent?
  • One Solution collect form web for “How do I configure Jenkins to build all branches except a few which I exclude?”

    How about using


    as branch specifier. This regexp means all branches not matching master.


    ^                ---> beginning of string
     (?!        )    ---> negative lookahead find all that doesnt match
        .*           ---> zero or more of 'any' character
          master     ---> should not match master
                 .*$ ---> will match anything to the end of string


    Git Baby is a git and github fan, let's start git clone.