When running git pull to pull changes from a remote repository, there could well be changes in the remote and your local repo. This causes conflits and git will fail to merge. 

You will see the error Automatic merge failed; fix conflicts and then commit the result.


Fortunately in git > 1.6 there is an easy fix to keep your changes (or the remote changes) and finish the merge. Local the offending files and run the following.

To keep the local version 

git checkout --ours NAMEOFFILE

To keep the remote changes

git checkout --theirs NAMEOFFILE

Then run the following to commit the changes

git add . 

git commit -m "merge changes"

You can now push your changes to the remote origin

 

Matt Reid

Lead Software Architect. Java/Node enthusiast, badminton lover, foodie.

drei01 Matthew_Reid


Published