Если вы также попытались удалить (нулевые) контрольные строки и удалить папку , специфичную для пользователя .xcuserdatad , и они не сработали, вот потенциальное решение.К вашему сведению ... Это было в Xcode 7.3.1.
Вот сценарий, с которым я столкнулся:
Я столкнулся с этой проблемой, которая была вызвана наличием "двойных" ветвей в git-репо... (т. е. одна ветвь BRANCH_A является ветвью разработки с некоторыми функциями, не подлежащими выпуску, а другая, имеющая те же коммиты, за исключением новых функций, называется BRANCH_B).
Рабочий процесс разработки выглядит следующим образом: начните с BRANCH_B, создайте ветвь фиксации CHANGE_C, внесите изменения и зафиксируйте, затем извлеките BRANCH_A, создайте ветвь фиксации, затем вишневый выбор изменений из CHANGE_C.BRANCH_A отслеживает BRANCH_B таким образом, с его файлами дополнительных функций.
В моем случае (по какой-то причине во время перебазирования изменений коллеги с пульта, который отслеживает BRANCH_B, файл проекта для BRANCH_B был поврежден.
В этом случае решение состоит в том, чтобы сохранить копию файла проекта для BRANCH_A (которая хороша и компилируется), затем извлечь BRANCH_B и заменить его файл проекта на копию.
Первоначально он не будет компилироваться, пока все ссылки на файлы объектов (из BRANCH_A) не будут удалены из Target's Build Phases> Compile Sources.
Отлично работает.