Apart from Ruby and Rails framework, mastering the SCM skill is a part of the checklist to be in the elite group. SCM is software configuration management and it is for managing changes in software.
You do not want to made some mistakes and realize all your hard work is lost, especially on the source codes.
I've first discovered SCM using SVN, of which a much improved version of CVS. This solves much of a problem when I need to work together to develop our software with other programmers.
Before using SVN, I need to zip up the source codes, copy it to my colleagues and then they do the changes and then we pass around. But tracking the changes is a cumbersome and error-prone task.
Since SVN, we have less problem with that, however, there is a problem too. SVN needs a central server, of which we need to synchronize (update, commit) with.
But lately, since I'm doing more open source and rails community seems to love Git, I've come to know this little tool that is once mastered, can't live without it. Git is different because it is a distributed SCM, unlike SVN which is a centralized SCM.