Force Git to always choose the newer version during a merge?
It is not exactly the "newer" version, but you can tell git to always prefer the version on the current branch using git merge branch -X ours
, or to prefer the version of the branch being merged, using git merge branch -X theirs
.
From man git-merge
:
ours:
This option forces conflicting hunks to be auto-resolved cleanly by favoring our version. Changes from the other tree that do not conflict with our side are reflected to the merge result. For a binary file, the entire contents are taken from our side.
theirs:
This is the opposite of "ours".
I use this,
git fetch --prune
git reset --hard origin/master
Take a look at my answer in Git timestamp based automated sync
Essentially we have to do manual timestamp comparison. I do not think git merge
has any built-in utility for this.