“Mastering Rollbacks with Git!”

Kesba IrvineKesba Irvine
2 min read

I found myself in quite a conundrum. The latest version of the code I was working on had caused all sorts of issues.

It was a mess.

I take a deep breath, reminding myself to stay calm and focused. Panicking won't solve anything. It seemed that a recent code change had unintended consequences. To resolve this issue I rolled back the code to a stable version.

I opened the Git command line interface and navigated to the project's directory. Using the git log command, I reviewed the commit history to locate the version I wanted to roll back to. Each commit displayed a unique identifier (SHA hash) along with the author, date, and commit message.

By scanning the commit messages and changes, I identified the commit that represented the version I wanted to revert to. I made a note of its SHA hash, which would help me later in the process.

To ensure that my rollback process didn't affect the main development branch, I created a new branch specifically for the rollback. Using the git checkout -b rollback command, I created and switched to the new branch.

With the rollback branch set up, I executed the git revert <commit-hash> command, replacing <commit-hash> with the SHA hash of the target commit. This command created a new commit that undid the changes introduced by the target commit, effectively rolling back the codebase to the previous version.

Once I confirmed that the rollback was successful, I switched back to the main development branch using git checkout main. Then, I merged the rollback branch into the main branch using git merge rollback.

This incorporated the changes from the rollback branch back into the main development branch while preserving the integrity of the codebase.

Finally, I pushed the merged changes to the remote Git repository using the git push origin main. This ensured that my team members would have access to the rolled-back version of the software.

Software development is an ever-evolving journey, and being prepared for bumps in the road is an essential part of the process. Remember, setbacks are not failures but stepping stones toward progress.

You can learn from each rollback experience to enhance your development practices and prevent future setbacks.

0
Subscribe to my newsletter

Read articles from Kesba Irvine directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Kesba Irvine
Kesba Irvine

I'm a multi disciplinary writer passionately exploring the transformative impact of generative AI on both business and daily life. I curate and summarize the most important news and insights so individuals and businesses can stay up-to-date on the latest advances in generative AI-powered products. In this ever-evolving AI landscape, my aim is to deliver accessible and pragmatic insights for harnessing the potential of generative AI to enhance both business strategies and everyday experiences.