One of my co-workers just found this data loss bug after a hour of work. Yes, I'll be submitting RADAR on it when I get reproducible steps.
These are the rough steps as he told them to me.
Have a project under SVN source control in Xcode 5.1.1 Create a new view controller. Name it FeedBackVC Enter some data and wait for Xcode to display the A in the project navigator next to the files. Realize that you made a spelling error in the file name. Remove the files by selecting them in the Project navigator and deleting them by pressing delete. Make sure to only delete the reference, not the files. In the Finder, rename the .h and .m files to Feedback with the appropriate suffixes. Drag them into the project again. Make sure to change the include file name in the .m file.
Select both files and right click on the files in the project navigator. Select Source Control and commit them. Make sure to select the files in the commit dialog/sheet, enter a comment and click the button to commit.
Results: Error message about the files not being in version history.
Wait a little bit and select another file in the project navigator.
Soon, the committed file names will turn red and an exclamation mark will appear next to them.
The files have been deleted.
Search the hard drive for the files. They are not to be found. Check the trash. They are gone.
The files have been deleted and are not in the SVN source tree.
I've got a photo of the deleted view controllers running on an iPhone, while Xcode's project navigator showing the same deleted files in red after the failed commit.
|