(iOS, XCode 4.2) Установка версии пакета с помощью ловушки Git post-commit заставляет мой проект превращаться в проект Mac

Я решил начать работу над версией своего проекта "Apple way", используя "Bundle versionstring, short" для "маркетинговой версии" (т.е. 2.0.1) моего проекта и "Bundle version" в качестве номера сборки (например, 42).

Для этого я добавил Git post-commit крюк для вызова agvtool next-version -all, Это на самом деле работает - Info.plist корректно обновляется с увеличением номера версии.

Однако, это также имеет неприятный побочный эффект, по-видимому, превращения моего проекта iOS в проект Mac - iOS device, iPhone 5.0 simulatorи т. д. исчезает из моего Scheme меню, которое нужно заменить одной записью, My Mac 64-bit, К счастью, это изменение кажется временным, так как выход и повторный запуск XCode возвращают отсутствующие записи схемы iOS.

Я делаю это неправильно? Есть ли лучший способ достижения моих целей? Или я столкнулся со странной ошибкой в ​​Xcode?

3 ответа

Решение

У меня точно такая же проблема, но вместо перезапуска XCode я просто повторно выбираю Цель развертывания на вкладке Сводка в параметрах цели. Это намного быстрее.

XCode 4 пытается анализировать файл проекта каждый раз, когда он изменяется, в отличие от XCode 3.2, который анализировал файл проекта только тогда, когда сама программа получила фокус.

Я бы не назвал это ошибкой как таковой, но это, безусловно, вызывает разочарование.

Кстати, я видел, что такого рода вещи случаются со схемами при подключении или отключении моего iDevice AND, в то время как XCode думает о том, что я сделал, возиться с меню схем. Закрытие и повторное открытие проекта исправляет это.

Я обычно проверяю, что мои файлы проекта закрыты, прежде чем я их фиксирую. Я бы, конечно, сделал бы это, если бы мой скрипт после фиксации также изменял файл проекта.

Другие вопросы по тегам