Возможные проблемы с обновлением до Snow Leopard / XCode 3.2? - PullRequest
0 голосов
/ 22 октября 2009

Я один из пары программистов, работающих вместе над приложениями для iPhone / iPod. Я хотел бы перейти на новую версию XCode (3.2) и Snow Leopard, но скорее всего, мой партнер этого не сделает. Может ли кто-нибудь выделить какие-либо проблемы, которые могут возникнуть у нас при совместном использовании кода? Есть ли несовместимости между старым и новым, или мы должны быть в состоянии делиться кодом / проектами счастливо?

Любая помощь / предупреждения будут оценены.

Ответы [ 5 ]

2 голосов
/ 23 октября 2009

Если вы все-таки решите попытаться создать двойную среду OS / Xcode, вы должны по крайней мере установить настройку проекта вашего общего проекта Xcode на вкладке «Общие», «Формат проекта» на «3.1», потому что если вы обновите проект до версии 3.2, Xcode 3.1 есть проблемы с его открытием.

0 голосов
/ 23 октября 2009

Я согласен, что вы должны обновить, но будьте осторожны, вам может понадобиться настроить ваш код.

Я особо отметил разницу в том, как работает NSAlert. В 10.5 я передал переменную «окно» в качестве параметра, и он создал лист, который открывается в этом конкретном окне. В 10.6 точно такой же код генерирует модальное диалоговое окно. Затем я изменил «окно» на «[само окно]», и лист вернулся.

У меня также есть небольшая проблема с Core Data, когда он выдает предупреждение «Не удалось вызвать назначенный инициализатор в NSManagedObject class XXX», хотя этот код был полностью протестирован в 10.5.

Я считаю, что были и другие мелкие проблемы, но я исправил их вместе с реальными ошибками и не стал их замечать.

0 голосов
/ 22 октября 2009

В этой ситуации у меня две машины, одна из которых SL / 3.2, а другая Leopard / 3.1. Для одного проекта, которым я делюсь между двумя, это похоже на работу. Но, как отмечает Марк, нет гарантии, что он будет работать во всех случаях.

Я не пробовал этого, но может оказаться полезным, чтобы вы использовали файл проекта в 3.2, а ваш партнер использовал файл проекта 3.1. Не регистрируйте его, работайте только с исходными файлами из системы контроля версий, сохраняйте файлы проекта локальными. Я делал это между версиями Visual Studio, что и послужило толчком к идее, но, хотя в моей голове это звучит хорошо, я не представляю, насколько хорошо это будет работать на практике.

Другая альтернатива - сохранить две версии Xcode на вашем компьютере (для получения инструкций обратитесь на SO или iphonedevsdk.com). Я сделал это через бета-версии OS 3.0, но это предполагает, что Xcode 3.1 счастливо живет на SL-машине. Вероятно, это самый безопасный вариант, так как худший вариант - 3.1 не будет установлен или работать на SL.

0 голосов
/ 22 октября 2009

Ваш партнер должен обновить. Это всего лишь 29 долларов! Есть много полезных новых функций, и время составляет около часа (немного больше, если вы включаете резервное копирование, но вы все равно уже делаете регулярные резервные копии, ВПРАВО?).

Я некоторое время был в смешанной команде с 3.2 и 3.1, и она работала - но это было одно или два обновления XCode назад.

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

0 голосов
/ 22 октября 2009

Не делай этого. Файлы проекта XCode известны своей хрупкостью и не всегда совместимы между версиями. Когда они делают несовместимые изменения между версиями, вы получите предупреждение об открытии файлов в новой версии. Для 3.2 против 3.1 такого предупреждения нет, но это не гарантирует, что у вас не возникнет никаких проблем.


Я должен пояснить, что я не имею в виду, что вы никогда не должны обновляться, просто вы и ваш партнер должны обновляться одновременно.

...