I have looked, searched, and read documentation and can't really find anything about this.
Basically, I want to be able to do this:
git reset -- *.exe
git reset -- */some_executable.exe
git reset -- some/very/long/path/some_executable.exe
git reset -- topleveldirectory/another/subdirectory/*
git reset -- topleveldirectory/another/subdirectory/SomeFile.cpp
git reset -- topleveldirectory/another/subdirectory/SomFile.h
Git does support some pathspec globbing, but you need to be careful to shell-escape the characters so they aren't interpreted by in your case, msys bash, which doesn't support more sophisticated wildcard expansion.
EDIT: Also, for your reset example, you can just pass the directory as an argument to git reset and git will operate recursively.
git reset my/long/path
git reset my/long/path/*