I'm a Program Manager for Azure DevOps and the maintainer of the libgit2 project, the Git repository management library that underpins tools like Azure Repos, Git Kraken and GitHub. I also develop version control tools and I also write and speak about Git and DevOps.
My buddy Martin and I created a podcast where we talk to people doing cool things with Git. We talk to the people who are building tools for Git and helping their teams be successful using it. If you're interested in Git or version control, you'll love it.Listen Now
There are precious few things in Git that save my bacon more often than the reflog. And knowing it's there encourages me to craft my commits, often rebasing them, into a manner that's easy to read for my collaborators. But it's not always easy to craft an easy-to-read pull request. It often means taking their feedback and going back to fix up prior commits, rewriting and rebasing. But what happens if you get this wrong? If you've rewritten a bunch of changes, and you made some errors, how do you get back to the ones that you rewrote? The reflog.