Git Stash
๐ Covered in this chapter:
git stash push/pop/list ยท Naming Stashes ยท Stash Conflicts
Temporarily set aside uncommitted changes with git stash so you can switch branches cleanly, then bring them back later.
1Git Stash โ What You'll Learn
Temporarily set aside uncommitted changes with git stash so you can switch branches cleanly, then bring them back later.
Here's everything this chapter covers, in the order you'll learn it:
- What stashing does
- Saving uncommitted changes with git stash push
- Applying a stash without removing it
- Popping a stash (apply + remove)
- Listing all stashes
- Naming a stash for clarity
- Dropping a stash you no longer need
- Stashing untracked files too
- Handling conflicts when popping a stash
- When to commit instead of stashing
2Working Example
๐ป Example: Git Stash
Bash
git stash push -m "Work in progress"
git stash list
git stash pop
3Best Practices & Common Pitfalls
๐ก Key things to remember:
- Stash is perfect for the 'I need to urgently switch branches but I'm mid-change' scenario โ it's a temporary shelf, not a replacement for committing real work.
โ Frequently Asked Questions (FAQ)
Q What's the most important thing to understand about git stash?
Focus on: git stash push/pop/list ยท Naming Stashes ยท Stash Conflicts. These are the core building blocks this chapter's examples are built around, and they show up repeatedly in later chapters of this course.
Q Is git stash something I'll use often in real projects?
Yes โ every concept in this chapter reflects a real, everyday part of professional Git and GitHub workflows, not just a theoretical exercise.