A branch specifier tells Jenkins which branch to build from your source code repository. It helps Jenkins pick the right code version.
Click to reveal answer
beginner
How do you specify the main branch in Jenkins using a branch specifier?
You use */main or */master in the branch specifier field to tell Jenkins to build the main branch.
Click to reveal answer
intermediate
What does the asterisk (*) mean in a Jenkins branch specifier like */feature/*?
The asterisk (*) is a wildcard that matches any characters. So */feature/* matches any branch inside the feature folder or prefix.
Click to reveal answer
beginner
Why is branch selection important in Jenkins pipelines?
Branch selection ensures Jenkins builds and tests the correct version of your code. It helps avoid mistakes like building old or wrong branches.
Click to reveal answer
intermediate
How can you select multiple branches in Jenkins using branch specifiers?
You can enter multiple branch specifiers each on a separate line, like */main*/develop, to build both branches.
Click to reveal answer
What does the branch specifier */develop mean in Jenkins?
ABuild the develop branch
BBuild all branches
CBuild the main branch
DBuild no branches
✗ Incorrect
The */develop specifier tells Jenkins to build the develop branch specifically.
Which symbol is used as a wildcard in Jenkins branch specifiers?
A#
B$
C*
D?
✗ Incorrect
The asterisk (*) is used as a wildcard to match any characters in branch names.
How do you specify multiple branches in Jenkins branch specifier?
AEnter each on a new line
BSeparate with semicolons
CUse a single wildcard
DUse spaces
✗ Incorrect
Multiple branch specifiers are entered each on a new line in the field.
Why should you carefully select branches in Jenkins builds?
ATo save disk space
BTo build the correct code version
CTo speed up the internet
DTo avoid using Jenkins
✗ Incorrect
Selecting the right branch ensures Jenkins builds the correct version of your code.
What does */feature/* match in Jenkins branch specifier?
AOnly main branch
BOnly the feature branch
CNo branches
DAny branch starting with feature/
✗ Incorrect
The wildcard matches any branch that starts with feature/.
Explain how branch specifiers work in Jenkins and why they are useful.
Think about how Jenkins knows which code to build.
You got /3 concepts.
Describe how to select multiple branches for building in Jenkins using branch specifiers.
Consider how to tell Jenkins to build more than one branch.
You got /3 concepts.
Practice
(1/5)
1. What does the Branch Specifier field in Jenkins do?
easy
A. It tells Jenkins which branch or branches to build.
B. It specifies the build timeout duration.
C. It defines the build environment variables.
D. It sets the Jenkins user permissions.
Solution
Step 1: Understand the purpose of Branch Specifier
The Branch Specifier is used to tell Jenkins which branch or branches to build from the source code repository.
Step 2: Eliminate unrelated options
Timeout, environment variables, and user permissions are unrelated to branch selection.
Final Answer:
It tells Jenkins which branch or branches to build. -> Option A
Quick Check:
Branch Specifier = Select branch to build [OK]
Hint: Branch Specifier selects branches to build in Jenkins [OK]
Common Mistakes:
Confusing branch specifier with build timeout
Thinking it sets environment variables
Assuming it controls user permissions
2. Which of the following is the correct syntax to specify the master branch in Jenkins Branch Specifier?
easy
A. refs/remotes/master
B. refs/tags/master
C. refs/heads/master
D. refs/branches/master
Solution
Step 1: Recall Git reference format for branches
Branches in Git are referenced as refs/heads/branch-name. So the master branch is refs/heads/master.
Step 2: Identify incorrect references
refs/tags/ is for tags, refs/remotes/ is for remote tracking branches, and refs/branches/ is not a valid Git ref.
Final Answer:
refs/heads/master -> Option C
Quick Check:
Branch refs start with refs/heads/ [OK]
Hint: Use refs/heads/branch-name for branch specifier [OK]
Common Mistakes:
Using refs/tags/ instead of refs/heads/
Confusing remote refs with local branch refs
Using invalid refs/branches/ prefix
3. Given the branch specifier refs/heads/feature/*, which branches will Jenkins build?
medium
A. Only the branch named exactly 'feature/*'.
B. Only the 'master' branch.
C. All branches except those starting with 'feature/'.
D. All branches starting with 'feature/', like 'feature/login' and 'feature/ui'.
Solution
Step 1: Understand wildcard usage in branch specifier
The asterisk (*) acts as a wildcard matching any characters after 'feature/'. So it matches all branches starting with 'feature/'.
Step 2: Analyze each option
Only the branch named exactly 'feature/*'. is incorrect because it treats '*' literally. All branches except those starting with 'feature/'. is opposite meaning. Only the 'master' branch. is unrelated.
Final Answer:
All branches starting with 'feature/', like 'feature/login' and 'feature/ui'. -> Option D
Quick Check:
Wildcard * matches multiple branches [OK]
Hint: Use * wildcard to match multiple branches [OK]
Common Mistakes:
Treating * as a literal character
Assuming it excludes matching branches
Confusing branch names with tags
4. You set the branch specifier to refs/heads/release but Jenkins builds no branches. What is the likely problem?
medium
A. The branch name is incorrect or does not exist in the repo.
B. The Jenkins server is offline.
C. The build script has syntax errors.
D. The workspace is full.
Solution
Step 1: Check branch existence
If Jenkins builds no branches, the specified branch refs/heads/release might not exist in the repository.
Step 2: Rule out unrelated issues
Server offline, build script errors, or workspace full would cause different errors or failures, not silent no build.
Final Answer:
The branch name is incorrect or does not exist in the repo. -> Option A
Quick Check:
Branch specifier must match existing branch [OK]
Hint: Verify branch exists before setting specifier [OK]
Common Mistakes:
Assuming Jenkins server status causes no build
Blaming build script syntax for branch selection
Ignoring branch existence check
5. You want Jenkins to build all branches except those starting with hotfix/. Which branch specifier pattern should you use?
hard
A. !refs/heads/*
B. refs/heads/*, !refs/heads/hotfix/*
C. refs/heads/*
D. refs/heads/hotfix/*
Solution
Step 1: Understand inclusion and exclusion patterns
Jenkins supports including all branches with refs/heads/* and excluding specific branches with !refs/heads/hotfix/*.
Step 2: Analyze options
refs/heads/*, !refs/heads/hotfix/* includes all branches but excludes hotfix branches. refs/heads/hotfix/* only includes hotfix branches. refs/heads/* includes all branches without exclusion. !refs/heads/* excludes all branches.
Final Answer:
refs/heads/*, !refs/heads/hotfix/* -> Option B
Quick Check:
Use ! to exclude branches in specifier [OK]
Hint: Use ! prefix to exclude branches in specifier [OK]
Common Mistakes:
Not using exclusion pattern with !
Only specifying excluded branches
Excluding all branches accidentally
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.