The slowest, most tedious way of finding a bad git commit is something we've all done before. You checkout some old commit, make sure the broken code isn't there, then checkout a slightly newer commit, check again, and repeat over and over until you find the flawed commit.
git bisect is a much better way. It's like a little wizard that walks you through recent commits, asks you if they are good or bad, and narrows down the broken commit. In this blog post, I encourage you to create a fresh git repository and walk through each step. Hopefully, you'll gain an intrinsic understanding of
git bisect by the end of the exercise.
Learning to develop professionally involves a lot more than just writing code. Major required skills include keeping code stable long-term, sharing tasks within a team, and building understandable interfaces so your code can be connected to and run from other programs. Learning these skills is going to involve a lot of mistakes, but fortunately there are tools out there to help you get you ahead of the curve before joining your first team.