I am a Git (hub user)18 Oct 2014
I promised last time that I wouldn’t leave it so long before writing again but it looks like I did. Whups. I apologise but life has been so busy that I really haven’t been writing as much as I should; I hope to change this.
The topic of the day is Github or “How I learned to stop worrying and love Linus Torvalds’ favourite versioning system.” I am a big fan personally of SVN products and Perforce, but git and specifically Github has become the defacto standard for open source collaborative projects so I could hold out no more. Everybody is doing it from Unreal Tournament 4 to Chocolate Doom and it’s easy to see why.
There are many options for versioning code out there with all sorts of strengths and weaknesses but I have yet to find a system that lets you put so much online and share with so many completely for free as long as your project is open source. This is the major downside actually, I’d love to put my entire site on here but I worry that I’d open myself up for hacking and other malarky if I did so I use a mix of perforce and Tortoise SVN for this website. N.B. I switched to github pages in 2018 so my site technically is entirely on github now! Everything else though I have stuck up on my public github page so feel free to take a look.
You can pay for a private repository but this can get quite expensive over the course of a year, adding up to £50 for the most basic private repository packages.
I’ve been up to all sorts of things from opening up the source code (including the linux port) of my ezDoom launcher to even hacking in xbox controller support in the original doom code via forking Chocolate Doom. I’ve even pulled down the old Doom 3 source code to stretch my C/C++ skills - I’ve improved but I have a long way to go.
Github has also made it easy to collaborate with my friends. Code ninja Steven Batchelor-Manning has been helping me with my OpenGL and TypeScript skills and I don’t think we would have made half the progress we have without Github. It’s becoming the de facto standard which is a little scary but also very exciting, the options to share and work on code together have never been greater.
Git does have a few niggles when it comes to learning how to use the basic commands like push, pull and fetch but Github is so advantageous that it is more than worth powering through and learning Git just to use that site alone. If it sounds like I am gushing, well - I am. As a cheapskate I love getting things for free and as a programmer I love versioning systems so I don’t lose my work, Github ticks both boxes very nicely.
If you program at all from a dabble in python to writing your own Z80 emulators it is more than worth a look.