

This is exactly the kind of scenario git stash is designed for. The first method, although appearing conventional, is less flexible because the unfinished saved changes are treated as a checkpoint rather than a patch that's still a work in progress. Manually keep the changes in files not tracked by Git.Create a commit at that point in branch A, commit and push your changes to fix the bug in B, then check out A again and run git reset HEAD^ to get your changes back.There are few ways to enable branch switching in this case: Git immediately aborts the operation and throws the error, "Your local changes to the following files would be overwritten by checkout … Please commit your changes or stash them before you switch branches."

You quickly save your changes to A and try to check out branch B with git checkout B. While working on some files in branch A, your team asks you to fix a bug in branch B. The A and B branches have diverged from each other for quite some time and have different heads. Suppose you are working on a repository with two branches, A and B. Assume for a moment that Git doesn't have a command to stash changes. The first thing to understand is why stashing changes in Git is important. Running Kubernetes on your Raspberry Pi.A practical guide to home automation using open source tools.6 open source tools for staying organized.An introduction to programming with Bash.A guide to building a video game with Python.
