2 minute read

I have been aware of version control systems for a long time. I learnt about them short after I started with the ways of linux, at a small local meeting on Open Source Software, in a talk on CVS and Subversion (or SVN). At that time, both were already oldies, and since them, many other systems have risen: mercurial, burg, bazaar, and of course, Git.

I immediately liked the concept of version control system, and adopted Subversion for my own projects. I have been using it since then: during my PhD time, for the tools and simulation programs I developed for my experiments, and even for my PhD Thesis, which was written in LaTeX; later, when I went into private business, I also used it there for the software I developed for the company. Last year, when I got back to working at a University I was gladly surprised, as my coworker also used it to host the software he was developing. It was the first time that I worked with someone else that also chose to use a version control system instead of piling up backups of files at different stages of development.

During all this time, Subversion was more than enough for me. I was basically working alone in every project, and I had never to worry about being updated with others changes, or merging other’s patches into my code. My versioning needs were simple, and they were more than covered by my trusty SVN.

It has only been in the last year that I have started to feel an increasing itch to learn and move over to Git, and most of it is due to the strong pull that GitHub is having on the developer community: there are more and more interesting projects coming from Git repositories every day, and also the number of tools providing direct integration with it is increasing. Also, Git seems to provide a very interesting feature that allows to easily import SVN-versioned projects into new Git repositories.

For these reasons, and also out of curiosity and some taste for something new, I have decided that from now on, I will move on from SVN, and use my personal GitHub account for my public projects, and a private Git repository, hosted on this very machine (it is highly possible that some of my next posts will be about how I have set it up), for my private ones.

Leave a comment