I don't think Construct can handle this case, you're basically corrupting a project and then asking Construct to understand it anyway.
Source control ought to stop you before you make conflicting changes. There are special mechanisms for handling conflicts. And you're right that the easiest way to solve them is to revert back to before the conflict, update, and try again.