Never used github. How does it work ? And how to release mod versions with github ?
If you're new to git, then https://try.github.io/
is a really good place to start. There's a bit of a learning curve, but git is pretty amazing in terms of what it can do as a change-management system, and for allowing multiple folks to work on code at the same time. I use git to manage my Factorio installs, so I've got branches for each of my various games (MSI, Sea Block, etc), as well as tags for vanilla factorio releases. It's incredibly handy if an updated mod breaks things and I want to roll-back to a previous state.
With regards to releasing mod versions with github, it's a little more tricky, but wonderful once you get them running. I usually use https://travis-ci.com/
to watch for release tags in git, and then build and upload the appropriate zip file that's generated from a build-script or makefile. It's also something I'm totally happy to help with, since I do release and software automation engineering as a job. If you want an example then here
is the code used to automatically deploy releases for RP-0 (a career mode for Kerbal Space Program), which simply looks for a file matching 'RP-0-*.zip' and uploads it to github 'releases' (which show up here
Edit: If you want to use git to automatically push releases to the Factorio mod portal, then that will depend a little on if they have a documented API for doing so. I've only used their manual upload.