[vcs] Reuse the VirtualFile instead of creating FilePathImpl on File

Relates to IDEA-119996

(cherry picked from commit 9c69111454c7bd2dd24dceeb22b3113290c3ef23)
[git log] IDEA-122305 Fix structure filter.

Use --sparse only when requesting the whole history.

Additionally use "--simplify-merge" in case of structure filter to
avoid unrelated merges.

(cherry picked from commit a39b28975be23b7c9202a330522adeafe8d81ca1)