Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

git stash questions

I am running msysgit 1.7.3.1. If I run stash apply, and there is a conflict, all of my stash changes get staged. Is this the correct behaviour? I found it a little surprising.

Another question: if I have stashed 10 files, and there is a conflict in one of them, will stash apply abort when it has a conflict, or will it apply all non-conflicted files.

Finally, if I do the following:

git stash
git pull
git stash apply

and another developer has removed a file that I have stashed, then I am unable to apply the stash on this file. How can I retrieve my changes from the stash?

Thanks!

like image 863
Jacko Avatar asked Oct 15 '10 20:10

Jacko


1 Answers

the index is used to indicate that these files did not have conflicts. Your conflicted files should not be in the index.

re the 10 files. Stash will add the remaining 9 to the index. Fix the conflict in the remaining file. Add it to the index. Then commit.

re the changes from the stash that are missing. You can get your file by doing a git checkout (stash-SHA1 or other reference to it>) -- filespecification

you can also change your stash to a branch which you then can checkout and do more things with.

hope this helps

like image 84
Adam Dymitruk Avatar answered Sep 25 '22 16:09

Adam Dymitruk