Operation on Git merge with file removed


I use SourceTree to merge between branches. In master branch, FILE-A is changed, and in develop branch, FILE-A is removed. When I merge develop onto master. It will mark this file as conflict.

The question is

1. How to know this file is deleted in branch merged from or deleted in branch merged to? The only way is type "git status" in terminal, it will show "deleted by them" or "deleted by us". I don't know how to get this information from GUI.

2. When I select "Resolve Using Theirs", the file will remain unchanged, not be deleted as I expected. The only way is remove the file by selecting "Remove". It is difficult when there is many conflicts. Now, I must select each file to see if this file is deleted, and do "Add" or "Remove" for each of those files. Then I can resolve remain conflicts with "Resolve Using Theirs" or "Resolve Using Mine". Is there a express way to do this?


7 answers

I have noticed the same issue (Windows version). If a file changed on one branch and was removed on another, the GUI doesn't really indicate that, it just shows those files in the working copy changes area with the exclamation icon (next to other files that have actual merge conflicts so they are visually identical). On the right, you just see "Unmodified file" and no info.

Trying to resolve the conflict just throws up error dialogs, where I would expect selecting Resolve -> Resolve using theirs would mark the file as Removed. I would also expect a different icon and some info on the right-hand pane indicating explicitly that the conflict is due to a modified file being removed.

It would be a huge UI improvement to have some buttons on the right-hand side or somewhere that show up in a merge situation and make it obvious what your possible actions are (diff tool, take theirs, take mine) and context-aware so in this case the actions could be "take my changes, take theirs (remove file)"

-1 Good info, but not an answer.

Thanks for letting me know I should avoid ever participating here because there are apparently a bunch of jackasses running around downvoting.

Awesome! Everyone from here, go there and vote up the issue! :D


Is there any fix for this. Or JIRA raised?

-1 not an answer, dude.

But I'd assume the answer is to add a feature request to JIRA and get questions 1 & 2 addressed!

Hi Bob. Is this for Mac or Windows?

It is for Mac

I would say those are big issues indeed, just tried it! :-o

If there is a merge conflict with a deleted file, I also can't tell on file status what happened. Even calling an external diff is disabled! O_o

And "Resolve Using Theirs" didn't delete the file as it should have!

Quite broken stuff there. I'd advice using command line or another tool for now, though for mac there aren't that many options.

We see this problem a lot when using Source Control on Lotus Notes databases (XPages development). Notes has a funny way to handle metadata....

If SourceTree could just mark 'COnflicts with deletions' in the view?

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Thursday in Agile

How Scrum works? It starts with training and education

To answer “How scrum works,” most of the teams I've worked with first addressed the question: “where to start?”  That question applies to both implementation and improvements on the Scrum framew...

180 views 3 5
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you