What is Git?
Have you ever noticed that Google Docs keeps a history of edits you’ve made on a document? It’s a feature that can come in pretty handy when “Gary from Accounting” decides it’s a good idea to overwrite year-end reports with cat memes. Luckily, a quick press of the save button brings up an interface where you can restore a version of the document without Gary’s cat memes in it. This is what we call a Version Management System. Basically, a version management system tracks changes made in a file, saves a copy, and acts as a way to restore the file to that copy later on.
Git is one such version management system, often used by developers to keep track of their code. But git is a slightly more complex version management system than Google Docs. The reason for this is because git is decentralized. In Google Docs, everyone works on one copy of the document, all at the same time. If you’ve ever experienced this, you’d know it’s kind of chaos. Git, on the other hand, has everyone working on their own local copy of the document, and then it all uploads to a central server for version storage. This makes things much less chaotic when everyone is working at the same time, but adds some complexity when trying to determine what version of the document should be saved for later restoration. But that is an issue to talk about another day.
Thanks for reading up about version management. This is the first of a series of posts on Git, what it is, how it works, and what you can do with it. Stay tuned for more about git, and feel free to check out some of the other blog series I’ll be putting out in the near future. I’ve got some drafts already for a blog series on TCP/IP that I think is gonna be an absolute banger. I’ll link it here when I get it posted.