Stop looking for .gitignore at top level of working tree (#20775)
I have a checkout where I'm using the new `exclude_gitignore` facility
introduced in #18696, and where a parent directory has a `.gitignore`
file that happens to match the full path of the checkout. I just spent
quite some time being very confused about why mypy reported success
despite the code having obvious typing errors. Unlike git itself, mypy
didn't stop looking for `.gitignore` files at the top level of the
working tree; now it does.