Когда ставить галочку «копировать элементы в папку группы назначения (при необходимости)» - PullRequest
10 голосов
/ 14 октября 2011

Всякий раз, когда я добавляю некоторые файлы в свой проект путем перетаскивания в XCode, появляется всплывающее сообщение «Копировать элементы в папку группы назначения (если необходимо)».

Я заметил, что когда мы используем большую часть сторонних библиотек, мы НЕ ставим флажок и вместо этого указываем путь к библиотеке в «Пути поиска по заголовку / Пути поиска в библиотеке».Но для небольших файлов ресурсов, таких как изображения, мы ставим флажок.

Какие конкретные сценарии я должен отметить, и какая разница?

Ответы [ 2 ]

15 голосов
/ 14 октября 2011

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

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

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

2 голосов
/ 14 октября 2011

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

Кроме того, если вы используете контроль версий, такой как встроенный git, файлы, не входящие в основную папку, не будут добавлены в дерево версий.

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

...