Reputation:
Is there any way to specify to git to automatically resolve the conflicts for a pack of files by taking the remote version for each of them? For instance, to take the remote version of each files in a certain directory?
Upvotes: 20
Views: 16631
Reputation: 4621
You can use recursive
strategy (-s) with theirs
option (-X). That is:
git merge -s recursive -X theirs source_branch
Upvotes: 7
Reputation: 59316
git-merge seems to support only the "ours" strategy, where the result of a merge is the local version. And that only for the whole tree.
If you enter a conflicted state while doing a merge, you can use git-checkout's --theirs
with a path to retrieve files from the index.
Finally you can git-reset to force parts of the tree to a specific commit.
There's now also http://www.seanius.net/blog/2011/02/git-merge-s-theirs/ who basically recommends making a merge -s ours
and then reverse-apply the changes.
Upvotes: 19