Bird
Raised Fist0
Gitdevops~5 mins

Listing worktrees in Git - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a Git worktree?
A Git worktree is an additional working directory linked to the same Git repository. It lets you work on multiple branches at the same time without switching branches in one folder.
Click to reveal answer
beginner
Which command lists all Git worktrees?
The command git worktree list shows all the worktrees connected to the repository, including their paths and the branches checked out.
Click to reveal answer
intermediate
What information does git worktree list display?
It shows the path of each worktree, the branch or commit checked out there, and if the worktree is locked or not.
Click to reveal answer
intermediate
How can you identify the main worktree in the list?
The main worktree is usually the one with the repository root path and no special lock status. It is the original working directory of the repo.
Click to reveal answer
beginner
Why use multiple worktrees instead of branches in one folder?
Multiple worktrees let you work on different branches at the same time without switching or losing changes. It’s like having multiple copies of your project linked to the same history.
Click to reveal answer
Which command shows all Git worktrees?
Agit status
Bgit branch -a
Cgit checkout
Dgit worktree list
What does a Git worktree allow you to do?
AWork on multiple branches at the same time
BDelete branches permanently
CMerge branches automatically
DClone a repository
In the output of git worktree list, what does the path represent?
AThe commit hash
BThe remote repository URL
CThe location of the worktree directory
DThe branch name only
How do you know which worktree is the main one?
AIt is always named 'main'
BIt has the root repository path and no lock status
CIt is the newest worktree
DIt is locked
What happens if you delete a worktree folder without removing it from Git?
AGit still thinks the worktree exists and may cause errors
BGit automatically removes it
CNothing, it is safe
DThe branch is deleted
Explain what a Git worktree is and why you might use multiple worktrees.
Think about having multiple project folders linked to the same Git history.
You got /3 concepts.
    Describe how to list all worktrees in a Git repository and what information you get from the list.
    Focus on the command and the details it shows.
    You got /4 concepts.

      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

      1. Step 1: Understand the purpose of git worktree list

        This command lists all worktrees connected to the repository, showing their folder paths and branches.
      2. 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.
      3. Final Answer:

        Shows all the linked worktrees with their paths and branches -> Option D
      4. 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

      1. Step 1: Recall the exact command for listing worktrees

        The correct command is git worktree list to display all worktrees.
      2. Step 2: Verify other options

        Options A, B, and D are invalid or do not exist in git worktree commands.
      3. Final Answer:

        git worktree list -> Option C
      4. 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?
      /projects/myrepo  123abc [main]
      /projects/myrepo/feature  456def [feature-branch]
      medium
      A. main
      B. feature-branch
      C. 123abc
      D. 456def

      Solution

      1. Step 1: Identify the worktree path in the output

        The path /projects/myrepo/feature corresponds to the second line in the output.
      2. Step 2: Read the branch name in brackets

        The branch checked out there is feature-branch, shown in square brackets.
      3. Final Answer:

        feature-branch -> Option B
      4. 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

      1. Step 1: Understand the error message

        The error means git does not recognize the 'worktree' command, likely due to version.
      2. Step 2: Check git version support

        Worktrees were introduced in git 2.5+. Older versions lack this command.
      3. Final Answer:

        Your git version is too old and does not support worktrees -> Option A
      4. 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

      1. Step 1: Understand git worktree list filtering options

        Git worktree list does not have built-in branch filtering options like --branch or --filter.
      2. Step 2: Use shell tools to filter output

        Using grep release after listing worktrees filters lines containing 'release', showing only those branches.
      3. Final Answer:

        git worktree list | grep release -> Option A
      4. 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 unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard