#xcode #ios5 #storyboard
#xcode #ios5 #раскадровка
Вопрос:
Я пытался найти правильный способ работы с раскадровками, когда над одним и тем же проектом работает много разработчиков, и я не могу найти ничего полезного.
Перед раскадровкой мы бы заблокировали наконечник во время его использования, чтобы убедиться, что другие пользователи не будут вносить изменения одновременно. Таким образом, конфликты слияния с наконечниками были довольно редки.
Но теперь, с раскадровками, я не вижу, чтобы разработчик блокировал все это на час, прежде чем другой сможет поработать со своей стороны! И конечно же, если двое из них изменяют раскадровку, возникает конфликт слияния. XML-файлы Xcode не очень хорошо объединять, и достаточно часто слияние вызывает проблемы и фактически приводит к повреждению файла, поэтому мы предпочли бы избежать этих конфликтов.
Я хотел знать, как другие народы справляются с этой проблемой? Какой рабочий процесс использует другая команда?
Спасибо!
Комментарии:
1. Мы используем несколько раскадровок, чтобы обойти эту проблему. Тем не менее, мы стараемся разумно разделить их на конкретные поездки пользователей, чтобы мы не просто использовали раскадровки так же, как nibs. Хотя это хороший вопрос!
2. Я уверен, что большинство команд борются с этой проблемой, но, похоже, для этого не существует какого-либо безупречного или официального рабочего процесса. Мне бы очень хотелось знать, как Apple справляется с этим со своими внутренними командами, это наверняка помогло бы нам!
3. Мы решили пока не использовать раскадровки. В основном потому, что мы делаем «app-map» приложения в omnigraffle, поэтому визуальная часть не представляет для нас никакой реальной ценности. Во-вторых, они предлагают небольшую реальную ценность в контексте нескольких разработчиков, но имеют несколько недостатков: 1. Трудно контролировать версии (как вы упомянули) 2. Не работают на ios до 5 (что по-прежнему является большинством пользователей) 3. Большинство приложений не настолько линейны
4. Мы только начали использовать раскадровки, а также столкнулись с проблемами с конфликтами и Git, особенно если члены команды используют разные версии Xcode. Я не уверен, что раскадровки — это все, что они взломали на данный момент, но, надеюсь, со временем наш отток снизится в файле раскадровки, и это не будет такой проблемой по мере продолжения проекта.
5. У нас тоже есть такая же проблема, надеюсь, новые функции git в XCode 5 помогут в этом.
Ответ №1:
Формат файла раскадровки сильно отличается от предыдущих форматов XIB, поэтому вы можете попробовать. Если у вас есть реальные примеры изменений, вызывающих конфликты слияния, которые вы не можете легко разрешить, лучше всего сообщать об ошибках в Apple по адресу http://bugreporter.apple.com .
В раскадровках элементы, как правило, размещаются в разных областях файла в зависимости от того, где они расположены на холсте, поэтому, когда у вас есть большая раскадровка, конфликты могут стать менее распространенными.
Ответ №2:
Если у меня возникает конфликт слияния, я просто открываю файл с помощью «Открыть как» и «Исходный код» и беру либо раздел mine>>>>, либо раздел другого соавтора.