A few years ago, I was working on a team who had been working with TFS project for some time. They had just started a new project and decided to move to Git in the process. Git was new to all of the engineers on the team, myself included, but we continued anyway.
At first, everything seemed to work fine – Visual Studio’s built in Git UI did a good job of hiding Git’s power, and presenting it in the same way as TFS. However, we increasingly ran into problems; people lost work, or waisted time working though merge issues. Visual Studio was doing a fantastic job of hiding Git, and while this seems like a well-meaning and helpful thing to do, it was causing us issues in the long run, because we were didn’t know what we were really doing behind the simple UI.
I decided to go away and deep dive into Git. I found that by understanding the Git graph, it allowed me to demystify the Git’s command line and visualise & plan their impact on my repository.
I started sharing what I had learned with my team, and was frequently asked to run training sessions or solve problems. I really did find that by understanding how Git works, and visualize the operations, I was able to work much faster and with much greater confidence.
I’d love for everybody to see and understand Git in this way; it really is a wonderful tool once you’ve unlocked it. So, I decided to put together a video to share how I see Git.
You can watch it above. This was a fascinating learning experience for me; setting up the recording and learning how to efficiently edit large projects (shout out to my video editor friend who’s brains I picked several times!). Constructive feedback is, of corse, gratefully received.