📖 Scenario: You are working on a software project where you need to develop two features at the same time. To keep your work organized, you will use Git branches. This way, you can switch between features without mixing their code.
🎯 Goal: Learn how to create and switch between multiple Git branches to work on different features simultaneously.
📋 What You'll Learn
Create a new branch called feature1 from the current branch
Create another new branch called feature2 from the current branch
Switch to the feature1 branch
Switch to the feature2 branch
List all branches to confirm both branches exist
💡 Why This Matters
🌍 Real World
Developers often work on multiple features or bug fixes at the same time. Using branches keeps their work separate and organized.
💼 Career
Knowing how to manage branches is essential for collaboration and version control in software development jobs.
Progress0 / 4 steps
1
Create the first branch feature1
Use the command git branch feature1 to create a new branch called feature1 from the current branch.
Git
Hint
Use git branch followed by the branch name to create a new branch.
2
Create the second branch feature2
Use the command git branch feature2 to create another new branch called feature2 from the current branch.
Git
Hint
Repeat the branch creation command with the new branch name.
3
Switch to the feature1 branch
Use the command git checkout feature1 to switch to the feature1 branch.
Git
Hint
Use git checkout followed by the branch name to switch branches.
4
Switch to the feature2 branch and list branches
Use the command git checkout feature2 to switch to the feature2 branch. Then use git branch to list all branches and confirm both feature1 and feature2 exist.
Git
Hint
The * shows the current branch. Both branches should be listed.
Practice
(1/5)
1. What is the main purpose of working with multiple branches simultaneously in Git?
easy
A. To develop features independently without affecting the main code
B. To delete all previous commits
C. To merge all branches into one automatically
D. To speed up the internet connection
Solution
Step 1: Understand branches in Git
Branches allow you to work on different versions of your project independently.
Step 2: Purpose of multiple branches
Working on multiple branches lets you develop features or fixes without disturbing the main code.
Final Answer:
To develop features independently without affecting the main code -> Option A
Quick Check:
Branches isolate work = B [OK]
Hint: Branches isolate work so main code stays safe [OK]
Common Mistakes:
Thinking branches delete commits
Believing branches merge automatically
Confusing branches with internet speed
2. Which command correctly creates and switches to a new branch named feature in one step?
easy
A. git checkout feature
B. git switch -c feature
C. git create branch feature
D. git branch feature && git checkout feature
Solution
Step 1: Identify command to create and switch branch
The command git switch -c <branch> creates and switches to the branch in one step.
Step 2: Check other options
git checkout feature switches but does not create if branch doesn't exist. git branch feature && git checkout feature is two commands combined. git create branch feature is invalid syntax.
Final Answer:
git switch -c feature -> Option B
Quick Check:
Create and switch = git switch -c [OK]
Hint: Use 'git switch -c' to create and switch branch fast [OK]
Common Mistakes:
Using 'git checkout' without creating branch
Trying invalid commands like 'git create branch'
Combining commands incorrectly
3. Given the commands below, what will be the output of git branch?
Branches created: feature, bugfix. Switched last to bugfix, so bugfix is current.
Step 2: Understand git branch output
It lists all branches, marking current with '*'. Order is alphabetical by default: bugfix, feature, main.
Final Answer:
* bugfix
feature
main -> Option A
Quick Check:
Current branch marked * = C [OK]
Hint: Current branch shows *; branches listed alphabetically [OK]
Common Mistakes:
Assuming last created branch is current
Ignoring the * mark for current branch
Misordering branch list
4. You tried to switch to a branch named dev using git switch dev but got an error: error: pathspec 'dev' did not match any branch. What is the likely cause?
medium
A. The branch dev is already checked out
B. You are not inside a Git repository
C. You have uncommitted changes blocking the switch
D. The branch dev does not exist yet
Solution
Step 1: Analyze the error message
The error says the branch name was not found, meaning it does not exist locally.
Step 2: Check other causes
Not being in a repo gives a different error. Uncommitted changes usually warn differently. Already checked out branch won't error.
Final Answer:
The branch dev does not exist yet -> Option D
Quick Check:
Branch missing = error pathspec not matched [OK]
Hint: Error means branch missing locally, create it first [OK]
Common Mistakes:
Assuming uncommitted changes cause this error
Thinking you are outside a Git repo
Believing branch is already checked out
5. You want to work on two features at the same time: feature1 and feature2. You want to keep your changes separate but test both locally without switching branches repeatedly. Which Git tool helps you do this?
hard
A. Git merge to combine branches
B. Git stash to save changes temporarily
C. Git worktree to create multiple working directories
D. Git rebase to rewrite history
Solution
Step 1: Understand the problem
You want to work on two branches simultaneously without switching back and forth.
Step 2: Identify the Git tool
Git worktree allows multiple working directories linked to different branches, enabling simultaneous work.
Step 3: Check other options
Git stash saves changes temporarily but doesn't allow simultaneous workspaces. Merge and rebase change history or combine branches, not simultaneous work.
Final Answer:
Git worktree to create multiple working directories -> Option C
Quick Check:
Multiple workspaces = git worktree [OK]
Hint: Use git worktree for multiple branches open at once [OK]
Common Mistakes:
Using stash to try simultaneous work
Confusing merge with parallel work
Thinking rebase helps with multiple working copies
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.