tags: git
Stashing your work
git stash- stash tracked filesgit stash -p- partial stash (goes through each changed “hunk” in your working copy and ask whether you wish to stash it)git stash -u- stash including untracked files (ex: new files that are not staged)git stash -a- stash including ignored files (ex: .env files)git stash push -u -m "message"- stash including untracked files with message
Re-applying stashed changes
git stash pop- removes the changes from your stash and reapplies them to your working copygit stash apply- reapply the changes to your working copy and keep them in your stash- This is useful if you want to apply the same stashed changes to multiple branches
Managing multiple stashes
git stash list- list of all stashesgit stash save "message"- save stash with a name to identify at later time easily- ex:
git stash save "add style to our site"
- ex:
git stash pop stash@{2}- choose a stash index from pop list and apply
Viewing stash diffs
git stash show- summary of a stashgit stash show -p- to view the full diff of a stash
Creating a branch from stash
git stash branch add-stylesheet stash@{1}- This checks out a new branch based on the commit that you created your stash from, and then pops your stashed changes onto it.
Cleaning up stash
git stash drop stash@{1}- drop stash with id stash@{1}git stash clear- delete all your stashes
sources: https://www.atlassian.com/git/tutorials/saving-changes/git-stash