An interesting idea, but, I noticed some way down (almost the end in fact) that sadly the title is misleading. Yes you're using Golang, but, only as a "script". In reality, you're calling git command line to perform the actual "Back Up".<p>I had hoped to learn something new, about writing a git client in Golang, but even as a person that strongly believes in "Golang all the things", I'd do this in Bash scripting, and in much less time (and code).
I only skimmed the article, because it wasn't readily apparent to me what advantage all this code provides over using git (maybe with bash) to backup Github and GitLab repositories.