Skip to content

Add option to resolve merge conflicts for binary driver #9846

@monoteba

Description

@monoteba

Describe the feature or problem you’d like to solve

Add an option to resolve merge conflicts with "ours" and "theirs" for the binary merge driver merge=binary

Right now, the local version is automatically chosen without any way to choose the remote, except using the command line.

Proposed solution

I would expect the same behaviour as with merge=text, where the user is given an option to choose the version to keep.

Based on the description of the binary merge driver, I also think this is reasonable to expect.

binary
Keep the version from your branch in the work tree, but leave the path in the conflicted state for the user to sort out.

https://git-scm.com/docs/gitattributes#Documentation/gitattributes.txt-binary

Additional context

I'm primarily using Git and GitHub Desktop with Unity projects, and would like to resolve merge conflicts in this manner. I'm aware that the ideal setup may use a custom merge driver that uses Unity's YAML merge tool. However, this isn't flawless and does require individual configurations for every team member. My experience tells me, that less technical people (artists) are often confused about their files being corrupted, because of conflict markers was added to their files, hence the use of the *binary driver. Though right now, the remote version is discarded while the GUI tells the user that everything is OK, as shown in the screenshot below.

Screen Shot 2020-05-22 at 10 48 54

Here I would like a scary-looking warning, and an option to choose which file to keep :) Just like with text files and LFS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugConfirmed bugs or reports that are very likely to be bugspriority-3Bugs that affect small number of users and/or relatively cosmetic in nature

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions