In git, when you do
git stash pop of unfinished code after upstream merges, you might get a conflict between the stash and the upstream changes you pulled in.
You git clone now has "unmerged paths" aka is in conflict state. For example,
git status shows:
# Unmerged paths: # (use "git reset HEAD <file>..." to unstage) # (use "git add/rm <file>..." as appropriate to mark resolution) # # both modified: src/some/file.txt # both modified: src/some/other/file.txt
After you fix the conflicts manually in the files, you normally want to tell git that the conflict has been resolved. If you google for how to do this, you typically find solutions that suggest to
git add the files and commit. But what if your (stashed) work is not ready for commit/staging yet?
The solution is pretty simple (and it is suggested by
git status) but it is not very intuitive/obvious ("reset" is does not sound the same as "resolve" to me):
git reset HEAD [files]
git reset (if unstaging everything is fine). This (mixed) reset will unstage the files, giving you a clean index/stage area, but the changes are kept in you working copy.