Resurrect the staged version of a file

'k' on deleted file in the "Unstaged changes" section use to first reset
all change on the staged version and then checkout the file as in the
last commit. This can lead to data lost if one have already staged some
change, then deleted the file then try to resurrect the just deleted
file.

It less surprising if we resurrect the staged version of a file when it
is different from the committed version.
Merge pull request #854 from vanicat/t/resurect-stagged-files

Resurrect the staged version of a file