it-swarm.com.ru

Проект ... xcodeproj не может быть открыт, потому что отсутствует его файл project.pbxproj

Я пытался объединить ветки, и это привело к ошибке «Невозможно открыть проект… невозможно открыть, потому что файл проекта не может быть проанализирован». Затем я попытался воспользоваться советом других ответов stackoverflow (а именно, чтобы отредактировать файл, чтобы удалить повреждение), но не смог отредактировать файл. Похоже, что это на самом деле каталог, поэтому, возможно, структура этого изменилась в версии 4.4 xcode, и поскольку ответ на Невозможно открыть проект ... не может быть открыт, потому что файл проекта не может быть проанализирован был записан.

Затем я попытался восстановить myProject.xcodeproj из резервной копии машины времени. Это не работает, потому что он говорит, что у меня нет разрешения на доступ к myProject.xcodeproj. Я пытался изменить разрешение этого каталога, но это не помогло.

Я закрыл и снова открыл xcode. Теперь ошибка:

Project ... xcodeproj не может быть открыт, поскольку в нем отсутствует файл project.pbxproj.

Как я могу исправить эту проблему в версии xcode 4.4? Может ли это быть восстановлено из предыдущего снимка или архива или версии в xcode. Можно ли его восстановить с помощью машины времени. Я хотел бы избежать перестройки всего проекта.

10
JeffB6688

В конце концов, что я должен был сделать,

'cp -R ...TimeMachineBackup/myProject.xcodeproj ...myProjectArea/myProject.xcodeproj'

Затем я должен был сделать следующее в myProjectArea:

git reset --merge

Это позволило мне открыть проект и переключить ветки обратно на мою основную ветку.

не приятный опыт

5
JeffB6688

Самое простое, что можно сделать, это, вероятно,

  1. Оформить заказ myProject.xcodeproj из системы контроля версий. Это будет содержать изменения, которые привели вас к конфликту в последний раз.
  2. Повторите изменения проекта, которые вы внесли с момента последней фиксации контроля версий
  3. commit/Push для управления исходным кодом.

В будущем, когда вы получите конфликт в файле проекта, взгляните на myProject.xcodeproj/project.pbxproj. Часто это просто новые файлы в проекте, которые были добавлены в одно и то же место. В этом случае вам просто нужно удалить метаданные конфликта и разрешить конфликтующее состояние.

6
boxel

Я смог заставить это работать без командной строки, как это:

  1. Перейдите на диск Time Machine в Finder.
  2. Перейдите к нужной резервной копии.
  3. Перетащите его туда, куда я хочу. Это будет жаловаться на отсутствие разрешения на доступ к .pbxproj
  4. Щелкните правой кнопкой мыши на xcodeproj, который вы только что перетащили, выберите «Показать содержимое».
  5. Щелкните правой кнопкой мыши xcodeproj в папке резервного копирования Time Machine и выберите «Показать содержимое».
  6. Перетащите .pbxproj, который вы видите внутри, в место назначения, которое вы только что создали с помощью перетаскивания в # 3.

Теперь это должно работать.

2
Almo

Для других, рассматривающих эту проблему, причиной в моем случае оказалось то, что «текст конфликта» из git merge попал в реальный файл:

<<<<<<< HEAD
                F0FDA2D61B99EB80007DB99D /* Aptron-mCollegix.xcassets */,
=======
                F08CFAAA1BC1E9EE00A5B6F5 /* Aptron-mCollegix.xcassets */,
>>>>>>> hotfix/Column_Text_Cut-off

открытие project.pbxproj в текстовом редакторе сделало исправление простым.

1
RayInNoIL

Это может также произойти, если вы по какой-то причине используете Sudo с модулями или редактором - если файл существует в каталоге yourApp.xcodeprojectroj, но xcode жалуется, что не может его найти - перейдите в корневой каталог проекта и выполните:

Sudo chown -R yourusername:staff ./*
0
Mrk Fldig

Если кто-то захочет найти отсутствующий файл project.pbxproj, попробуйте открыть .xcodeproj с помощью какого-либо редактора кода, и вы найдете там файл. И обратите внимание, что у меня была резервная копия моего приложения на другом компьютере, поэтому я нашел там этот файл, чтобы вы могли где-то создать резервную копию своего проекта, чтобы это работало.

0
Farhan