Home / Git

Resolving Common Git Issues

Git is a powerful version control system that allows developers to efficiently manage their codebase. However, like any software, it's not uncommon to encounter issues while using Git. In this article, we will take a look at some common Git issues and how to resolve them.

1. Git Merge Conflicts

Merge conflicts occur when Git is unable to automatically merge two different sets of changes. This usually happens when multiple branches have made conflicting modifications to the same lines of a file. To resolve a merge conflict, follow these steps:

  1. Use git status to identify the conflicting file(s).
  2. Open the conflicting file(s) in a text editor and look for the conflict markers (<<<<<<<, =======, >>>>>>>).
  3. Manually edit the file to resolve the conflicts, removing the markers and ensuring the content reflects the desired outcome.
  4. Save the file(s) and stage them using git add <file>.
  5. Commit the changes with git commit to complete the merge.

2. Undoing Git Commits

It is not uncommon to make a mistake while committing changes to Git. Fortunately, Git provides several ways to undo commits based on the situation. Here are a few common scenarios and their corresponding commands:

  • To undo the last commit, use git reset HEAD~1. This command removes the last commit while leaving the changes in your working directory.
  • To discard changes in a specific file after a commit, use git checkout -- <file>. This resets the file to the state it was in the previous commit.
  • To revert a commit and create a new commit that undoes the changes, use git revert <commit>. This is useful when you want to keep a record of the mistake while fixing it.

3. Recovering Lost Commits

If you accidentally delete commits or lose them due to a hard reset, fear not! Git has mechanisms to help recover lost commits. The most common method is to use the git reflog command to see a log of all branch updates and HEAD movements. You can then find the commit you lost and use git cherry-pick <commit> to bring it back into your branch.

4. Git Stash

The git stash command allows you to temporarily save changes that you are not ready to commit, enabling you to switch branches or perform other operations. To apply a stash later on, use git stash apply or git stash pop to reapply the changes to your working branch. This is particularly useful when you encounter unexpected issues or need to interrupt your work temporarily.

5. Remote Branches Not Showing

If you are unable to see newly created remote branches after pushing them to a shared repository, it might be due to an outdated local branch list. To update your local branch list and fetch the latest changes from the remote repository, use git fetch. This will retrieve the latest branch information and make them visible locally.


Git is an indispensable tool for any developer, but hiccups are bound to happen. Understanding how to resolve common Git issues empowers developers to navigate through problems with ease, ensuring a smooth version control experience. By following the steps outlined in this article, you'll be equipped to handle and resolve these common Git issues efficiently.

noob to master © copyleft