Merge branch 'jc/merge-symlink-ours-theirs' into maint

"git merge -Xours/-Xtheirs" learned to use our/their version when
resolving a conflicting updates to a symbolic link.

* jc/merge-symlink-ours-theirs:
  merge: teach -Xours/-Xtheirs to symbolic link merge
This commit is contained in:
Junio C Hamano
2018-02-15 15:18:12 -08:00
2 changed files with 45 additions and 4 deletions

View File

@ -1026,10 +1026,19 @@ static int merge_file_1(struct merge_options *o,
&b->oid,
!o->call_depth);
} else if (S_ISLNK(a->mode)) {
oidcpy(&result->oid, &a->oid);
if (!oid_eq(&a->oid, &b->oid))
result->clean = 0;
switch (o->recursive_variant) {
case MERGE_RECURSIVE_NORMAL:
oidcpy(&result->oid, &a->oid);
if (!oid_eq(&a->oid, &b->oid))
result->clean = 0;
break;
case MERGE_RECURSIVE_OURS:
oidcpy(&result->oid, &a->oid);
break;
case MERGE_RECURSIVE_THEIRS:
oidcpy(&result->oid, &b->oid);
break;
}
} else
die("BUG: unsupported object type in the tree");
}