The source code for this blog is available on GitHub.

Ali Ismail's Blog.

Git Benefits on Solo Projects

Cover Image for Git Benefits on Solo Projects
Ali Ismail
Ali Ismail

Git Solo Benefits

Git is known as being the gold standard of distributed version control, ie. great for collaboration and making sure people don't step on eachother's toes. However, it's also a great tool if you're working on a project by yourself. It makes recovery easier, gives you more control on how personal work flow, grands you efficiency, and a sense of stability.

Unlocking Recovery

Git takes snapshots of your codebase everytime you check in your code with a 'commit'. If anything goes terrible wrong you can always look up the version right before your most recent commit. git log

You should find something that looks like 'commit a1b2c3d4' along with an Author and Description. Copy paste that commit id in a command like the following to travel back in time: git reset --hard <commit-id>

There's a great feeling of liberation that no matter how risky your approach is when fixing on building something new, you can always revert back to a previous version where everything was working just fine. It's the ultimate CTRL-Z (or CMD-Z) cheatcode in software engineering.

Unlocking Control

We all get moments in life when we have more ideas than bandwidth to execute them all. And sometimes while working on one area, we get a sudden inspiration on how to solve another problem. Having that safety and ability to jump between versions that are not at all compatible gives you the freedom and control to work how you want to work and not be limited to linear approaches that physical reality bounds us by. Check out my post on branch hopping for more details on how to safely jump around.

Unlocking Efficiency

Git allows you to chunk down huge daunting tasks into small bite size pull requests. And yes, even when working with yourself it's best to use pull requests and document exactly what the changes are all about. This makes reverting to previous versions or checking on the past a lot easier. It's a great time saver from development, reviewing, and reversion perspectives. Make your future self feel loved by writing more thoughtful pull requests to yourself.

You can always make a git commit -m "Helpful message of what the changes are about

Unlocking Stability

You can add workflow actions to github so that as you're building on git, you can have the confidence that what you build actually works. The testing can be automated and verified allowing you to spend more time building things you love rather than doing quality control and brute force testing each feature. That's not to say completely ignore testing, every respectable and mature developer executes a test plan (ie. their own set of test) on what they build before shipping it out to production.