Many moons ago, in the days when "client-server programming" on Windows 3.1 was what the cool kids did, I had "some success" on my regular project and so would often get to jump in on other project teams to coach and even do some coding. Since I always wanted to learn and do everything, this was a huge reward for me as a developer. One team I got to jump in on was having a lot of trouble with their version control system. They were using Visual Source Safe (at this time, it was a pretty hot, if you can believe it).
They HATED VSS. Despised it. Could not stop complaining about it. They were constantly losing code changes, accidentally deploying bugs that one developer or another would have SWORN they had fixed. Some of the developers started to suggest that they go back to the old way of version control, which was more or less like this:
"Hey, I'm about to edit that file on the file server... Don't do anything until I tell you I'm done". And the ever popular "Who deleted my file!!".
I knew full well, that was NOT the answer. I had coached others on the use of version control and had not seen the types of problems this team were having. So, I decided to sit down with one of the developers and talk to him about how he worked, and how he used VSS. He seemed to get the mechanics of it just fine. He understood check-in and check-out, getting the latest version and so on. So I asked him to show me what he was currently working on and he opened up the file explorer to show me. I immediately saw where all the problems were coming from. He had a large number of folders labeled "Copy of BlahBlah" where he would check out a file, copy it, make changes to the copy, make another copy, make changes to that copy, and so on until he was satisfied that he was done. At that point he would check out the files again and copy his changed files over the check-out version and then do the check-in. Turned out, in many cases he would even work on files for several days beofre 'checking it in'. During which, any number of other developers had worked on the same file or files and he would then effectively erase their work, re-introducing 'fixed' bugs, removing new features and so on. Once I made sure he and the rest of the team (just in case) understood not just the mechanics, but the whole POINT of version control, problems abruptly ended (or were replaced with the other well known problems VSS had, mechanically).
This person, who was a really nice guy, had his PHD in Mechanical Engineering. See the theme here? You can learn, or even get your doctorate, in the mechanics of anything, but real software development is about creativity and common sense. Its hard to coach common sense, but if you happen to have an ounce of it you should do your best to share.