Если xcworkspace будет в gitignore

Я использую GitHubObjectiveCGitIgnore

Когда я иду в sourcetree, я вижу:

project.xcworkspace

Этот файл не игнорируется с помощью файла Github .gitignore. Я не уверен, что мне нужно зафиксировать и нажать этот файл?

Ответ 1

Если вы используете Cocoapods, я действительно нахожу, что ответ зависит от нескольких вещей.

  • Если вы просто хотите, чтобы проект был компилируемым и исполняемым "из коробки", тогда перейдите и проверьте все; xcworkspace и все контейнеры.
  • Если есть какой-то модуль, который вам нужно изменить по какой-либо причине, и вы хотите включить это изменение в свой проект, тогда проверьте все. Например, я обнаружил ошибки, которые не были исправлены по одной причине или другой, и было проще просто исправить их самостоятельно и проверить в контейнере вместе с моим проектом, а не ждать обновления модуля или интеграции библиотеки вручную (что по сути является тем же результатом, что и проверка контейнера в любом случае). В качестве альтернативы, разворачивайте репо, нажимайте на него свои изменения и указывайте свой блок на свою вилку.
  • Если у вас нет проблем с любым из контейнеров, и вы подтвердили, что все работает с версиями указанных вами контейнеров, вам не нужно проверять файл xcworkspace или контейнеры. Конечно, вам придется запускать pod install в этом случае.

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

Ответ 2

Короче да, это должно быть совершено.

У меня есть мой файл xcworkspace, зарегистрированный в моем репо. Если вы не используете рабочее пространство, это, вероятно, не требуется, но поскольку я использую Cocoapods, это создает xcworkspace с исходным проектом и проектом pods внутри него. Использовать рабочее пространство - это правильный способ обработки нескольких наборов/зависимостей проектов.

Ответ 3

Если у вас есть/или вы планируете иметь несколько проектов в рабочей области (например, подпроекты вашего проекта), вам не следует добавлять его в .gitignore.

Cocoa-стручки просто добавляют свой собственный проект в рабочую область, если рабочая область существует при pod install.

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

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