Jenkins git commit for specific branch triggers build jobs for other branches too

We have a internal enterprise Github repo, and i have multiple feature branches.
I am facing a issue with triggering a build on a specific branch.
I have configured jobs for each of the feature branches. There is one jenkins job for one feature branch.
The first time i commit a code, it also triggers builds for jobs with other branches.

Steps to reproduce the problem:

  • Gem file with git remote failing on heroku push
  • Why git doesn't push tags by default?
  • What is “git remote add …” and “git push origin master”?
  • How to pull code from BitBucket with C# programmatically
  • How to run Git server on Windows?
  • How do I debug a large git commit?
  • 1.We have a internal Github for enterprise. For my repo, i have setup webhook for github as below

     Settings -> Webhooks & Services -> Services
     Select Jenkins (GitHub plugin) 
     Jenkins Hook Url: http://************/jenkins/github-webhook/

    2.For my 3 branches in github repo : branch1, branch2, branch3, i created three jobs in jenkins:Job1, Job2, Job3 with SCM configured as below

    Source Code Management:
    Repo URL: git@********/********.git
    Branches to Build: refs/heads/BRANCH_NAME
    Build Trigger: Build when a change is pushed to GitHub

    3.On committing code to my branch : branch1. It triggers all the 3 jobs in jenkins: Job1, Job2, Job3.
    Note:This is the first time that the jobs were triggered.

    4.On committing code for the second time to branch: branch1. It triggers only Job1 in jenkins.

    It looks like first time all jobs are getting executed for the repo, irrespective of the branch.

    Details on my jenkins setup: Jenkins Version: 1.565.1, GitHub plugin: 1.9.1

    Any help/guidance to solve this issue is appreciated.

    FYI: I tried steps listed

  • Equivalent of grep -v with git log pickaxe
  • Script to remove commits older than date specified
  • How to remove remote tags not on my local repository?
  • OpenShift Jenkins git clone fails: Host key verification failed
  • Get access to Build Changelog in Jenkins
  • Maintaining iOS app for different countries in one Git repository
  • One Solution collect form web for “Jenkins git commit for specific branch triggers build jobs for other branches too”

    Make a script with the follow command (assuming your github SO is linux)

    curl http://yourserver/jenkins/git/notifyCommit?url=<URL of the Git repository>

    put this script in ./git/hooks

    In your jenkins jobs change

    “Build when a change is pushed to GitHub”

    To “Poll SCM”

    Don’t create any schedule in Poll SCM

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