Blog
GitByBit dev diary, thoughts and ideas about Git, GitHub, and the world of
software development by the industry veteran Alexander Shvets.
Subscribe via email
TL;DR: You can now practice making pull requests in GitByBit!
Have you ever found a bug in someone else's code and thought, "why haven't they fixed this yet?" You file an issue, wait... and nothing happens.
Here's the thing: you don't have to wait anymore.
You can roll up your sleeves and contribute the fix yourself. Submit a pull request, get it merged, and suddenly everyone using that library benefits from your work.
You never know what you'll pull out of a pull request.
A real bug, a real fix
The practice starts with a relatable scenario: your fitness tracker app bugs out when someone tries to record their activity on a golf course using distance in yards. The app can't handle yards-to-meters conversion and crashes. The fix is straightforward—add the missing conversion (1 yard = 0.9144 meters). You patch the library and carry on with your day.
But after a while, an update comes that breaks your fix. You have to reapply the patch again. Then it happens again. And again. You realize that you're wasting time on pointless patching, whereas the fix should be in the library itself. How do you get it there?
The mighty pull request
Most open-source projects are hosted on GitHub or similar platforms, and they all support pull requests. A pull request is a way to propose changes to a project. You fork the repository, make your changes, and then submit a pull request to the original repository, suggesting that your changes be merged into the main codebase.

Aside from the technical aspects of forking, branching, and merging, the pull request process also involves communication. You need to explain what you've done, why it's necessary, and how it improves the project. This is where you can showcase your understanding of the codebase and your ability to contribute effectively. It won't help if you botch a pull request with crappy commit messages, push a bunch of unrelated changes, or fail to follow the project's contribution guidelines.

This attitude in pull request comments won't get you anywhere.
In addition, the back-and-forth activity on a pull request could require updating your fork, rebasing, and resolving conflicts. There's a whole suite of Git skills involved in the process, and now you can practice them all using GitByBit in a realistic scenario with real GitHub repositories.

Nailing a pull request requires a lot of patience and attention to detail.
In addition to the pull request practice, I've added several new entries to Gitopedia, including git rebase and git merge. Also, there are two new best practices: Atomic commits and Use feature branches.
Hi there! My name is Alexander Shvets, and I'm the creator of GitByBit. I'm excited to announce that the blog is now live! 🎉
Honestly, I should have done this much earlier. I've been working on GitByBit for over a year, and along the way, I've gathered a lot of insights about Git, version control, and modern software development practices.
I'll also be sharing some of the artwork I've created for the project—like this:
I'm almost 40. A friend of mine insists that younger folks won't get the Terminator references, but I love it and think it's still a great reference. Don't you?
I launched my first Git resource back in 2011: it was called GitHowTo.com. It's still online and surprisingly popular: over 100,000 people visited it last year alone.
But by today's standards, that format is too rigid. It followed a single track, focusing only on the most common Git commands. Many real-world issues weren't covered, and if you got stuck, you had to dig through Stack Overflow or other resources for answers. There was no AI to help you out.
So I decided to build something better: an interactive Git learning experience, focused on practice rather than theory. Instead of switching between a browser and a terminal, I asked myself—what if everything happened right inside your code editor? What if you could learn Git while working on your own projects, without ever leaving your IDE?
That's how GitByBit came to life. It took time to get here, but it's finally ready—and I hope you'll find it genuinely useful.
Next up: dev diaries! I'll be sharing my thoughts on the project, the challenges I faced, and the lessons I learned along the way. Stay tuned!