DEV Community

Nathan Mattes
Nathan Mattes

Posted on • Originally published at zeitschlag.net

All Things Version Controlled

These are some things, articles and thoughts about version control. You are already using it, of course you are, aren't you?

Recently, we recorded an episode for our German podcast on Software Engineering and stuff. For nearly 50 minutes we talked about version control: We discussed the basic principles, git, Subversion and fossil.

What brought this issue up, was my new job. When I started it in October, we used Subversion for version control, but we wanted to replace it with git within a month. It was pretty much my first task and after I figured out what to do, it went surprisingly well. During this process and especially when teaching my — still pretty limited — knowledge on git to my colleagues, I learned a lot. Teaching others is still the most effective way of learning for me. This is probably a good place to mention ”Pro Git“, it's a book about git. You can read for free as eBook or PDF or online. And you should read it, you might learn something (new).

I came across a blogpost about commit messages in git. My colleagues didn't put much love and effort in writing clear commit messages in Subversion, which is why git log --oneline is sometimes a bit hard to read. You better don't look up my commits on Github. Just don't. I'm still learning, too.

What I like about git a lot, is its staging area: Sometimes I might work in a quite chaotic way and every time I'm really grateful, that git allows me to clean up my work: Using the staging area, I can seperate my coding work in good commits and no one will ever notice that this once was a mess. 🤫

So, now that we're working in 20108 version control system-wise, I stumbled upon a very interesting blogpost about using CVS aka. Version Control before git on a very interesting blog about “Computing through the ages”. The last sentense summarizes pretty well, why you should read this thing, too:

Going back and using CVS for a while is an excellent way to find yourself with a new appreciation for Git’s power and flexibility. It illustrates well why understanding the history of software development can be so beneficial—picking up and re-examining obsolete tools will teach you volumes about the why behind the tools we use today.

Thanks to Michael J. Tsai for blogging the CVS-blogpost. I might have fallen in love with git — again.

Top comments (0)