Предположим следующий сценарий:
файл a и b оба изменены, а a находится в индексе. Если вы запустите git stash, а затем git stash pop, файл a больше не будет подготовлен.
a
b
git stash
git stash pop
Как вы заставляете git stash возвращать индекс в предыдущее состояние?
Если я правильно понимаю, думаю, вам просто нужно:
git stash pop --index