Just wondering if it's time to start to decouple the client and the server. I did that with mail and use a native client only, and hosting a git repo on DO or similar should not be too big of an issue either.
For a solo dev, running a remote is a great idea and way cheaper than paying for GH private repos. You're giving up some availability and disaster recovery, but as a solo dev those aren't big problems (spin up a new host, configure your SSH keys, push). I did this years ago!
When the remote is shared (with other devs or tools), then you have the hassle of provisioning accounts, updating keys when they get lost, implementing ACLs, setting them, recording who changes what refs for audit trails, availability/backups becomes an actual problem, managing disk space + garbage collection, etc. The time you spend on those interruptsion is time (and concentration) that you're not spending on what you want to do. That's where the value proposition of GitHub comes in…
GitHub then has the value-adds/lock-in of easy webhook integrations, gh-pages branch, issues, wiki, and the web UI.
If all you want is somewhere to push code that's always available & private to you, then I'd look into using some could-based object store to host your repo. If you want to share the repo with other devs/tools… let me know where to find 99 other people willing to spend $5/month on this kind of thing.