Bird
Raised Fist0
Jenkinsdevops~5 mins

Branch discovery configuration in Jenkins - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is Branch Discovery in Jenkins Multibranch Pipeline?
Branch Discovery is a feature in Jenkins Multibranch Pipeline that automatically finds and manages branches in a source code repository, allowing Jenkins to build each branch separately.
Click to reveal answer
beginner
How does Jenkins discover branches in a Git repository?
Jenkins uses the Branch Discovery strategy configured in the Multibranch Pipeline job to scan the repository and find branches based on rules like including all branches or only those with pull requests.
Click to reveal answer
intermediate
What are the common Branch Discovery strategies in Jenkins?
Common strategies include: 1) Discover all branches, 2) Discover branches that are also filed as pull requests, 3) Discover only branches with open pull requests, and 4) Ignore branches.
Click to reveal answer
beginner
How do you configure Branch Discovery in Jenkins UI?
In Jenkins, go to your Multibranch Pipeline job > Configure > Branch Sources > Add Source (e.g., Git) > Under Behaviors, select 'Discover branches' and choose the desired strategy like 'All branches' or 'Branches with pull requests'.
Click to reveal answer
beginner
Why is Branch Discovery important in CI/CD pipelines?
Branch Discovery ensures Jenkins automatically detects new branches and pull requests, enabling automated builds and tests for each branch, which helps maintain code quality and speeds up development.
Click to reveal answer
What does Branch Discovery in Jenkins Multibranch Pipeline do?
ACreates new branches in the repository
BDeletes old branches from the repository
CMerges branches automatically
DAutomatically finds and manages branches in the repository
Which Jenkins job type supports Branch Discovery?
AFreestyle Project
BMultibranch Pipeline
CMatrix Project
DPipeline Script
In Jenkins, where do you configure Branch Discovery settings?
AIn the Jenkins System Log
BIn the Global Tool Configuration
CUnder Branch Sources in Multibranch Pipeline configuration
DIn the Jenkins User Profile
Which Branch Discovery strategy would you use to build only branches with open pull requests?
ADiscover only branches with open pull requests
BDiscover all branches
CIgnore branches
DDiscover branches that are also filed as pull requests
What is a benefit of using Branch Discovery in Jenkins?
AAutomatically builds new branches without manual setup
BAutomatically deletes branches after build
CAutomatically merges branches after build
DAutomatically creates branches in the repository
Explain what Branch Discovery configuration is in Jenkins and why it is useful.
Think about how Jenkins finds branches to build automatically.
You got /4 concepts.
    Describe the steps to configure Branch Discovery in a Jenkins Multibranch Pipeline job.
    Focus on the Jenkins UI navigation and options.
    You got /5 concepts.

      Practice

      (1/5)
      1.

      What is the main purpose of branch discovery in Jenkins?

      easy
      A. To merge branches automatically before building
      B. To manually select branches for building
      C. To automatically find and build all branches in a repository
      D. To delete old branches from the repository

      Solution

      1. Step 1: Understand branch discovery concept

        Branch discovery is designed to find all branches automatically in a source code repository.
      2. Step 2: Identify the purpose in Jenkins

        Jenkins uses branch discovery to keep builds updated without manual intervention.
      3. Final Answer:

        To automatically find and build all branches in a repository -> Option C
      4. Quick Check:

        Branch discovery = automatic branch finding [OK]
      Hint: Branch discovery means Jenkins finds branches automatically [OK]
      Common Mistakes:
      • Thinking branch discovery requires manual branch selection
      • Confusing branch discovery with branch deletion
      • Assuming branch discovery merges branches
      2.

      Which strategyId value in Jenkins branch discovery configuration finds all branches including PRs?

      easy
      A. 4
      B. 2
      C. 1
      D. 3

      Solution

      1. Step 1: Recall strategyId meanings

        In Jenkins, strategyId 3 means discover all branches including pull requests.
      2. Step 2: Match strategyId to description

        StrategyId 1 is for only branches, 2 is for branches and PRs from origin, 3 includes all branches and PRs, 4 is for PRs only.
      3. Final Answer:

        3 -> Option D
      4. Quick Check:

        strategyId 3 = all branches + PRs [OK]
      Hint: strategyId 3 includes all branches and PRs [OK]
      Common Mistakes:
      • Confusing strategyId 1 with including PRs
      • Using strategyId 4 which only finds PRs
      • Assuming strategyId 2 includes PRs
      3.

      Given this Jenkins branch discovery snippet:

      {"strategyId": 1}

      Which branches will Jenkins discover?

      medium
      A. Only branches that are not pull requests
      B. All branches including pull requests
      C. Only pull request branches
      D. No branches will be discovered

      Solution

      1. Step 1: Understand strategyId 1 meaning

        StrategyId 1 means discover only branches, excluding pull requests.
      2. Step 2: Apply to the snippet

        The snippet uses strategyId 1, so Jenkins finds only normal branches, not PRs.
      3. Final Answer:

        Only branches that are not pull requests -> Option A
      4. Quick Check:

        strategyId 1 = branches only [OK]
      Hint: strategyId 1 excludes PRs, finds only branches [OK]
      Common Mistakes:
      • Assuming strategyId 1 includes PRs
      • Thinking strategyId 1 finds no branches
      • Confusing strategyId 1 with strategyId 3
      4.

      You configured Jenkins with {"strategyId": 5} for branch discovery. What is the likely result?

      medium
      A. Jenkins discovers all branches and PRs correctly
      B. Jenkins throws a configuration error or ignores the setting
      C. Jenkins discovers only pull requests
      D. Jenkins discovers no branches but builds anyway

      Solution

      1. Step 1: Check valid strategyId values

        Valid strategyId values are 1, 2, 3, and 4. 5 is invalid.
      2. Step 2: Predict Jenkins behavior on invalid strategyId

        Jenkins will likely throw an error or ignore the invalid value, causing no discovery.
      3. Final Answer:

        Jenkins throws a configuration error or ignores the setting -> Option B
      4. Quick Check:

        Invalid strategyId = error or ignore [OK]
      Hint: Use only valid strategyId 1-4 to avoid errors [OK]
      Common Mistakes:
      • Assuming strategyId 5 works like 3 or 4
      • Expecting Jenkins to discover branches anyway
      • Ignoring configuration errors
      5.

      You want Jenkins to build only branches that start with feature/ and ignore others. Which branch discovery configuration should you use?

      hard
      A. Use {"strategyId": 1} with an additional branch filter for feature/*
      B. Use {"strategyId": 3} without any filters
      C. Use {"strategyId": 2} and disable branch filtering
      D. Use {"strategyId": 4} with a filter for feature/*

      Solution

      1. Step 1: Choose strategyId for branches only

        StrategyId 1 discovers only branches (excluding PRs), suitable for filtering branches.
      2. Step 2: Apply branch filter for prefix

        Adding a filter for branches starting with 'feature/' limits builds to those branches only.
      3. Final Answer:

        Use {"strategyId": 1} with an additional branch filter for feature/* -> Option A
      4. Quick Check:

        strategyId 1 + filter = feature branches only [OK]
      Hint: Combine strategyId 1 with branch filter for prefix [OK]
      Common Mistakes:
      • Using strategyId 3 without filters builds all branches and PRs
      • Disabling filters causes all branches to build
      • Using strategyId 4 only finds PRs, not branches
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard