Florin
Florin

Reputation:

How to automatically resolve merge conflicts by selecting the remote version in Git?

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

Answers (2)

L. Holanda
L. Holanda

Reputation: 4621

You can use recursive strategy (-s) with theirs option (-X). That is:

git merge -s recursive -X theirs source_branch

Upvotes: 7

David Schmitt
David Schmitt

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

Related Questions