Bird
Raised Fist0
Gitdevops~15 mins

git stash list to view stashes - Mini Project: Build & Apply

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Using <code>git stash list</code> to View Stashes
📖 Scenario: You are working on a project and have some changes that you want to save temporarily without committing. You will use Git stash to save these changes and then view the list of all saved stashes.
🎯 Goal: Learn how to create a stash and use git stash list to see all saved stashes in your Git repository.
📋 What You'll Learn
Create a stash with a specific message
Use git stash list to view all stashes
💡 Why This Matters
🌍 Real World
Developers often need to save unfinished work temporarily to switch tasks without losing progress.
💼 Career
Knowing how to manage stashes helps in multitasking and keeping the Git history clean in professional software development.
Progress0 / 4 steps
1
Create a Git stash with a message
Run the command git stash push -m "work in progress" to save your current changes with the message "work in progress".
Git
Hint

Use git stash push -m "your message" to save changes with a message.

2
Create another Git stash with a different message
Run the command git stash push -m "bug fix changes" to save another set of changes with the message "bug fix changes".
Git
Hint

Use git stash push -m "bug fix changes" to save the second stash.

3
Use git stash list to view all stashes
Run the command git stash list to see the list of all saved stashes.
Git
Hint

Use git stash list to view all stashes saved in your repository.

4
View the output of git stash list
Run the command git stash list and observe the output showing the two stashes with their messages.
Git
Hint

The output lists stashes with their index and messages. The most recent stash is stash@{0}.

Practice

(1/5)
1. What does the command git stash list do in Git?
easy
A. Applies the latest stash to the working directory
B. Deletes all stashes permanently
C. Shows all saved stashes with their names and messages
D. Creates a new stash from current changes

Solution

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

    This command is used to display all the stashes saved in the repository, showing their names and messages.
  2. Step 2: Differentiate from other stash commands

    Unlike commands that create, apply, or delete stashes, git stash list only shows the list without changing anything.
  3. Final Answer:

    Shows all saved stashes with their names and messages -> Option C
  4. Quick Check:

    View stashes = git stash list [OK]
Hint: Use git stash list to see all saved stashes quickly [OK]
Common Mistakes:
  • Confusing list with apply or drop commands
  • Thinking it deletes or creates stashes
  • Expecting it to show file changes inside stash
2. Which of the following is the correct syntax to view all stashes in Git?
easy
A. git stash show
B. git stash list
C. git stash view
D. git stash display

Solution

  1. Step 1: Recall the exact command to list stashes

    The correct command to list all stashes is git stash list.
  2. Step 2: Verify other options are invalid

    git stash show shows details of one stash, not the list; git stash view and git stash display are not valid Git commands.
  3. Final Answer:

    git stash list -> Option B
  4. Quick Check:

    List stashes = git stash list [OK]
Hint: Remember: 'list' shows all stashes, not 'show' or 'view' [OK]
Common Mistakes:
  • Using 'git stash show' to list all stashes
  • Typing 'git stash view' which is invalid
  • Confusing 'list' with 'show'
3. Given the following output from git stash list:
stash@{0}: WIP on main: 123abc Fix header
stash@{1}: WIP on feature: 456def Add login
stash@{2}: WIP on main: 789ghi Update footer
What is the message of the stash at stash@{1}?
medium
A. Add login
B. Fix header
C. Update footer
D. WIP on main

Solution

  1. Step 1: Identify the stash index and message

    The stash at stash@{1} shows the message after the colon, which is 'Add login'.
  2. Step 2: Confirm the message corresponds to the correct stash

    Other stashes have different messages: stash@{0} is 'Fix header', stash@{2} is 'Update footer'.
  3. Final Answer:

    Add login -> Option A
  4. Quick Check:

    Message at stash@{1} = 'Add login' [OK]
Hint: Read stash index carefully; message follows the colon [OK]
Common Mistakes:
  • Mixing stash indexes and messages
  • Choosing the branch name instead of message
  • Ignoring the stash number format
4. You ran git stash list but got no output, even though you recently stashed changes. What is the most likely reason?
medium
A. Git stash list only shows uncommitted changes
B. You used git stash list incorrectly with extra arguments
C. Your stashes were deleted automatically after applying
D. You are in a different repository without stashes

Solution

  1. Step 1: Check repository context

    If git stash list shows nothing, you might be in a different repository where no stashes exist.
  2. Step 2: Evaluate other options

    Using extra arguments would cause an error, not empty output; stashes are not deleted automatically unless dropped; git stash list shows saved stashes, not uncommitted changes.
  3. Final Answer:

    You are in a different repository without stashes -> Option D
  4. Quick Check:

    No output means no stashes in current repo [OK]
Hint: Check current repo; no stashes means empty list [OK]
Common Mistakes:
  • Assuming stashes auto-delete after apply
  • Expecting git stash list to show uncommitted changes
  • Using wrong command syntax causing silent failure
5. You have multiple stashes saved. You want to apply the second stash shown in git stash list without removing it from the stash list. Which command should you use?
hard
A. git stash apply stash@{1}
B. git stash pop stash@{1}
C. git stash drop stash@{1}
D. git stash list stash@{1}

Solution

  1. Step 1: Understand the difference between apply and pop

    git stash apply applies a stash but keeps it in the list; git stash pop applies and removes it.
  2. Step 2: Identify correct command to apply second stash

    To apply the second stash, use git stash apply stash@{1}. git stash drop deletes the stash, and git stash list stash@{1} is invalid syntax.
  3. Final Answer:

    git stash apply stash@{1} -> Option A
  4. Quick Check:

    Apply without removing = git stash apply [OK]
Hint: Use apply to keep stash, pop to remove after applying [OK]
Common Mistakes:
  • Using pop which deletes stash after applying
  • Trying to list a specific stash with wrong syntax
  • Dropping stash instead of applying