Как Вы сохраняете исходные файлы проекта XCode в синхронизации с Вашими каталогами файловой системы?

Я плохо знаком с XCode, и я нахожу управление файлами огромной болью. В большинстве IDE у Вас может просто быть исходное дерево проекта, ссылаются на структуру каталогов на диске. Это помогает добавить новые файлы к Вашему проекту - Вы просто помещаете их на диск, и они будут скомпилированы автоматически.

С XCode кажется, что я должен оба создать файл и отдельно добавить его к проекту (или быть вынужден управлять файловой системой через UI). Но это означает, что совместное использование .xcodeproj посредством управления исходным кодом чревато проблемами - часто, мы получим конфликты слияния на xcodeproj файле - и когда мы не сделаем, мы часто получаем ошибки компоновщика, потому что во время слияния некоторые файлы, которые были перечислены в проекте, вырезаются. Таким образом, я должен пойти и повторно добавить их к файлу проекта, пока я не могу заставить его компилировать, и затем перепроверять в файле проекта.

Я уверен, что должен пропускать что-то здесь. Я пытался использовать 'ссылочные папки', но код в них, кажется, не компилируется. Это кажется безумным для создания IDE, который вынуждает всех изменить единственный совместно используемый файл, добавляя или удаляя файлы к проекту.

16
задан durron597 25 August 2015 в 19:33
поделиться

1 ответ

Мне интересно, какие IDE вы используете, которые автоматически компилируют все в каталоге, поскольку ни одна IDE, которую я когда-либо использовал, не делает этого (по крайней мере, для C++). Я думаю, что довольно стандартно иметь файл проекта, содержащий список всех файлов. Часто вы можете захотеть включить только определенные файлы для разных целей, иметь настройки компилятора для каждого файла и т.д.

В любом случае, учитывая, что именно так это работает, у вас не должно быть слишком много проблем из-за конфликтов слияния. Лучший совет - делать коммит рано и часто, чтобы не отставать от изменений других людей. Простое добавление файлов в проект не должно приводить к конфликту, если только они не добавлены в одну и ту же точку дерева проекта. Мы используем Xcode в нашей команде уже много лет, и у нас очень редко возникают конфликты: только если кто-то изменил структуру проекта.

К счастью, поскольку формат файлов в Xcode текстовый, разрешить конфликты, когда они возникают, довольно просто, в отличие от старых добрых времен Codewarrior с его двоичным форматом.

2
ответ дан 30 November 2019 в 23:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: