📖 Scenario: You are working on a Git project that uses multiple worktrees to manage different branches simultaneously. You want to see all the worktrees linked to your repository to keep track of your work.
🎯 Goal: Learn how to list all Git worktrees associated with your repository using the correct Git command.
📋 What You'll Learn
Use the Git command to list all worktrees
Display the output clearly in the terminal
💡 Why This Matters
🌍 Real World
Developers use Git worktrees to work on multiple branches at the same time without switching branches in a single folder.
💼 Career
Knowing how to manage and list Git worktrees helps in efficient branch management and parallel development in professional software projects.
Progress0 / 4 steps
1
Initialize a Git repository
Run the command git init in your project folder to create a new Git repository.
Git
Hint
Use git init to start a new Git repository in your current folder.
2
Create a new worktree
Use the command git worktree add ../feature-branch feature to create a new worktree named feature-branch for the branch feature. Note: Ensure the branch feature exists or use git worktree add -b feature ../feature-branch to create and add it.
Git
Hint
Use git worktree add followed by the path and branch name to create a new worktree. Use -b to create the branch if it doesn't exist.
3
List all worktrees
Run the command git worktree list to see all the worktrees linked to your repository.
Git
Hint
The command git worktree list shows all worktrees with their paths and branches.
4
Display the list output
Use the command git worktree list and ensure the output shows the main and feature-branch worktrees.
Git
Hint
Running git worktree list should show both the main and feature-branch worktrees with their paths.
Practice
(1/5)
1. What does the command git worktree list do?
easy
A. Deletes all existing worktrees
B. Shows the commit history of the current branch
C. Creates a new worktree
D. Shows all the linked worktrees with their paths and branches
Solution
Step 1: Understand the purpose of git worktree list
This command lists all worktrees connected to the repository, showing their folder paths and branches.
Step 2: Compare with other options
Options A and C describe deleting or creating worktrees, which are done by different commands. Shows the commit history of the current branch shows commit history, unrelated to worktrees.
Final Answer:
Shows all the linked worktrees with their paths and branches -> Option D
Quick Check:
List worktrees = B [OK]
Hint: Remember: 'list' shows all worktrees and their details [OK]
Common Mistakes:
Confusing 'list' with 'add' or 'remove' commands
Thinking it shows commit history
Assuming it deletes worktrees
2. Which of the following is the correct syntax to list all git worktrees?
easy
A. git worktree show
B. git worktree ls
C. git worktree list
D. git worktree status
Solution
Step 1: Recall the exact command for listing worktrees
The correct command is git worktree list to display all worktrees.
Step 2: Verify other options
Options A, B, and D are invalid or do not exist in git worktree commands.
Final Answer:
git worktree list -> Option C
Quick Check:
Correct syntax for listing = C [OK]
Hint: Use full command 'git worktree list' to avoid errors [OK]
Common Mistakes:
Using 'show' or 'status' instead of 'list'
Shortening 'list' to 'ls' which is invalid
Confusing with other git commands
3. Given the output of git worktree list below, what branch is checked out in the worktree at /projects/myrepo/feature?
The path /projects/myrepo/feature corresponds to the second line in the output.
Step 2: Read the branch name in brackets
The branch checked out there is feature-branch, shown in square brackets.
Final Answer:
feature-branch -> Option B
Quick Check:
Branch at /feature = feature-branch [OK]
Hint: Branch name is always in brackets after path [OK]
Common Mistakes:
Confusing commit hashes with branch names
Picking the wrong line for the path
Ignoring the brackets around branch names
4. You ran git worktree list but got an error: fatal: 'worktree' is not a git command. What is the most likely cause?
medium
A. Your git version is too old and does not support worktrees
B. You typed 'worktree' instead of 'worktrees'
C. You are not inside a git repository
D. You need to initialize worktrees with a special command first
Solution
Step 1: Understand the error message
The error means git does not recognize the 'worktree' command, likely due to version.
Step 2: Check git version support
Worktrees were introduced in git 2.5+. Older versions lack this command.
Final Answer:
Your git version is too old and does not support worktrees -> Option A
Quick Check:
Unsupported git version = A [OK]
Hint: Check git version if 'worktree' command not found [OK]
Common Mistakes:
Assuming typo in command name
Thinking worktrees need special init
Not verifying git version
5. You have multiple worktrees for your project. You want to list all worktrees and filter only those on the branch named 'release'. Which command combination will achieve this?
hard
A. git worktree list | grep release
B. git worktree list --branch release
C. git worktree show release
D. git worktree list --filter=branch=release
Solution
Step 1: Understand git worktree list filtering options
Git worktree list does not have built-in branch filtering options like --branch or --filter.
Step 2: Use shell tools to filter output
Using grep release after listing worktrees filters lines containing 'release', showing only those branches.
Final Answer:
git worktree list | grep release -> Option A
Quick Check:
Filter branches by grep after list = D [OK]
Hint: Use shell grep to filter worktree list output by branch [OK]
Common Mistakes:
Assuming git worktree list supports --branch or --filter
Using 'show' instead of 'list'
Expecting git to filter output internally
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.