Not a direct answer to this question, but very good to know.
I created a file named Device.swift in my branch and added some code to it. Then my colleague also created the same file Device.swift in his branch and got it merged before I got my chnages merged.
What will happen is that both in my xcodeproj/project.pbxproj file there was something like:
5C5809E72257D81500D4CBB2 /* Device.swift in Sources */
While in the master branch which had his changes, there was:
26E3A7A5226F6E13001B176C /* Device.swift in Sources */
We’ll both have Device.swift. Xcode will see this as a merge conflict, since we’ve both changed the same line.
If you just let them both be there, then in your Xcode you’ll probably end up seeing Device.swift twice and it won’t compile.
It would also be more of a problem if I added Device.swift in /Models/Devices while he has it added in /Modell/Gadgets.
Solution:
Remove all references to: 5C5809E72257D81500D4CBB2 /* Device.swift or the other. I’m not 100% sure how to decide which one you should remove so I got a copy of my Device.swift before and then start deleting.
And also if files are in two different directories then you’d have to manually delete one of them. Whichever you prefer