Creating a Multibranch Pipeline
The Multibranch Pipeline project type enables you to implement different Jenkinsfiles for different branches of the same project. In a Multibranch Pipeline project, Jenkins automatically discovers, manages and executes Pipelines for branches which contain a Jenkinsfile in source control.
This eliminates the need for manual Pipeline creation and management.
To create a Multibranch Pipeline:
Click New Item on Jenkins home page.

Enter a name for your Pipeline, select Multibranch Pipeline and click OK.
Jenkins uses the name of the Pipeline to create directories on disk. Pipeline names which include spaces may uncover bugs in scripts which do not expect paths to contain spaces.

Add a Branch Source (for example, Git) and enter the location of the repository.


Save the Multibranch Pipeline project.
Upon Save, Jenkins automatically scans the designated repository and creates appropriate items for each branch in the repository which contains a Jenkinsfile.
By default, Jenkins will not automatically re-index the repository for branch additions or deletions (unless using an Organization Folder), so it is often useful to configure a Multibranch Pipeline to periodically re-index in the configuration:

The Multibranch Pipeline project type enables you to implement different Jenkinsfiles for different branches of the same project. In a Multibranch Pipeline project, Jenkins automatically discovers, manages and executes Pipelines for branches which contain a Jenkinsfile in source control.
This eliminates the need for manual Pipeline creation and management.
To create a Multibranch Pipeline:
Click New Item on Jenkins home page.

Enter a name for your Pipeline, select Multibranch Pipeline and click OK.
Jenkins uses the name of the Pipeline to create directories on disk. Pipeline names which include spaces may uncover bugs in scripts which do not expect paths to contain spaces. |

Add a Branch Source (for example, Git) and enter the location of the repository.


Save the Multibranch Pipeline project.
Upon Save, Jenkins automatically scans the designated repository and creates appropriate items for each branch in the repository which contains a Jenkinsfile.
By default, Jenkins will not automatically re-index the repository for branch additions or deletions (unless using an Organization Folder), so it is often useful to configure a Multibranch Pipeline to periodically re-index in the configuration:

Additional Environment Variables
Multibranch Pipelines expose additional information about the branch being built through the env global variable, such as:
- BRANCH_NAME
Name of the branch for which this Pipeline is executing, for example master.
- CHANGE_ID
An identifier corresponding to some kind of change request, such as a pull request number
Additional environment variables are listed in the Global Variable Reference.
Multibranch Pipelines expose additional information about the branch being built through the env global variable, such as:
- BRANCH_NAME
Name of the branch for which this Pipeline is executing, for example
master.- CHANGE_ID
An identifier corresponding to some kind of change request, such as a pull request number
Additional environment variables are listed in the Global Variable Reference.
Supporting Pull Requests
Multibranch Pipelines can be used for validating pull/change requests with the appropriate plugin. This functionality is provided by the following plugins:
Please consult their documentation for further information on how to use those plugins.
Multibranch Pipelines can be used for validating pull/change requests with the appropriate plugin. This functionality is provided by the following plugins:
Please consult their documentation for further information on how to use those plugins.