Migrates multiple SVN repos to Git, without anything fancy (no Ruby, no dependencies, no issues
with Cygwin paths). SVN tags are created as Git tags and properly pushed to the Git repo. To run:

1) Edit run-authors.sh to have your SVN repos. Run it to get an authors.txt file.

2) Edit the authors.txt to have the names and emails if you like. You must use GitHub user email
addresses if you want contributions to be associated with GitHub accounts.

3) Edit run-convert.sh to have your SVN repos and project name (for local temp directories). Run it.

4) Optionally, for each repo run this command to identify the largest 1000 files:
cd repo.git
join -o "1.1 1.2 2.3" <(git rev-list --objects --all | sort) <(git verify-pack -v objects/pack/*.idx | sort -k3 -n | tail -1000 | sort) | sort -k3 -n

Then run BFG Repo Cleaner to delete files that are too large:
https://rtyley.github.io/bfg-repo-cleaner/
java -jar bfg.jar --strip-blobs-bigger-than 100M repo.git
cd repo.git
git reflog expire --expire=now --all && git gc --prune=now --aggressive

5) Create each Git repo on the server: git init --bare reponame.git
Or if creating new repos on GitHub, don't populate them with a readme or license.
Push to server using your repo URL:
cd repo.git
git push --mirror --follow-tags ssh://your.com/url/repo.git

6) Done! Isn't Git fun!