Master Git for effective implementation of version control for your programming projects

Listen to this episode on Anchor FM

Have you found yourself in a place with Git where you’re unsure what to do next? In this episode of the DATAcated on Air podcast, host Kate Strachnyi talks with Jesse Liberty, author of Git for Programmers and several other books. They discuss Git, version control, and how programmers use Git in general. Listen to learn how you can learn and improve your skills in Git.

You will want to hear this episode if you are interested in...

  • Jesse’s start in programming [02:03]
  • What is Git? [05:02]
  • Git vs. GitHub [16:48]
  • The future of programming [22:10]
  • Solving conflicts [24:15]
  • TFVC to Git [31:20]
  • The future of Git [35:56]

What is Git?

When Jesse started programming, he would have to make a complete backup of his directory after each little bit of work, which was slow and time-consuming. When source control came along, it did that work. Then the man who invented Linux invented Git for personal use, later making it available for the Linux community and the wider community. Rather than a centralized repository that source control used, Git is distributed and incredibly fast.

Git has its own terminology and reputation for being difficult to learn. Jesse’s theory is that most of the books and learning of Git go into the internal workings of Git. Jesse chose to do something different with his book. Instead, he wrote about how to use Git and when to use various aspects of it, making Git more accessible. Some chapters are on more advanced techniques, and one is about how to get out of trouble. These can help find where a bug in the code was introduced. All the examples in the book are in incredibly simple C# so that even people who don’t know C# can understand.

Limitations of GUIs

If someone had asked Jesse about GUIs last year, he would’ve said they’re great but have limitations. Some things can be done at the command line that can’t be done in a GUI. However, Visual Studio has become so good that those limitations may not be valid anymore. There are other excellent GUIs, but Jesse tends to use the command-line or Visual Studio. His book shows how to do just about everything in three ways: the command-line, GitHub desktop, and Visual Studio 2019.

Switching from TFVC to Git

Switching to Git from another format is difficult, so buying a book that explains the fundamentals, as well as the advanced topics, is critical. Once someone becomes familiar with how Git works and what it does, it becomes less scary. Jesse’s advice, especially for those using Azure DevOps, is to dive in. He also advises letting Azure DevOps help set up the CI/CD pipeline. The main thing is to be specific, keep track of what is being checked in, what’s in the repository, if changes have been made, and if someone else’s work is going to get stepped on. That brings code from the repository to be merged into working code frequently so that issues surface early. Overall, this makes issues much easier to fix.

Resources & People Mentioned

Connect with Jesse Liberty

Connect with DATAcated


Subscribe to the DATACATED On Air podcast