◐ Shell
clean mode source ↗

Add types to git/config.py by Yobmod · Pull Request #1234 · gitpython-developers/GitPython

Adding types to config.py and cmd.py
Functions annotated all listed in commit titles.

I had to use a few casts in this one, due to the use of hassattr to distinguish strings from file objects.
If anyone knows a better way, let me know. (Its an open issue on mypy, and Guido recomends rewriting and doing type checks - a job for the future!) python/mypy#1424 (comment)

Some minor logic changes, all for type checks (e.g. because str is a subtype of Sequence, have to check for it before other sequences) or to try to separate strings from bytes.

All check pass and mypy happy. I also ran some basic scripts against it, and no errors.

Might be worth cutting a release after this PR, in case an errors are hiding?
(No rush, I only submitted this one so fast as it was waiting in my fork already)