📅  最后修改于: 2023-12-03 15:35:09.152000             🧑  作者: Mango
As software developers, we often find ourselves working on multiple tasks or features simultaneously on a single codebase. During the development process, we may need to switch branches, pull or push changes, or work on other critical tasks. In such cases, we may have some unfinished code changes that we don't necessarily want to commit yet. Stashing is a useful feature in Git that allows programmers to save these changes temporarily without committing them.
Stashing refers to the process of saving your unfinished changes temporarily in Git. When you stash your changes, Git saves your work, including uncommitted changes, staged changes, and untracked files, into a stack. Once you're ready to work on the changes again, you can unstash them and continue from where you left off.
To stash your unstaged changes, you can use the following command:
git stash
This command will stash all your changes, including untracked files. If you only want to stash the unstaged changes without the untracked files, use the following command:
git stash save --keep-index
To apply your stashed changes, use the following command:
git stash apply
This command will apply the last stashed changes. If you want to apply a specific stashed change, you can use the following command:
git stash apply stash@{n}
Replace n
with the index number of the stashed changes you want to apply.
To list your stashed changes, use the following command:
git stash list
This command will list all the stashed changes in a stack. The most recent stash will appear at the top of the stack.
To delete your stashed changes, use the following command:
git stash drop
This command will delete the last stashed changes. If you want to delete a specific stashed change, you can use the following command:
git stash drop stash@{n}
Stashing is a handy feature in Git that allows programmers to save their unfinished changes temporarily. With stashing, you can switch between branches, pull or push changes, or work on other critical tasks without worrying about losing your work. Knowing how to stash and unstash your changes can boost your productivity and make your development process more efficient.