в проекте XCode я изменил файл xcodeproject / project.pbxproj, но для меня это бесполезная информация, она для компиляции.
Должен ли я git игнорировать этот файл и файл xcodeproject / projectxworkspace / username.xcuserdata / UserInterfaceState.xcuserstate?
Ответы:
Обновление в свете Swift Package Manager: если вы создаете проект как пакет Swift - вам определенно следует игнорировать этот файл, поскольку он может быть сгенерирован с использованием файловой системы как источника истины. Вы можете сделать это с помощью следующей команды:
Для ответа, отличного от SwiftPM, см. Ниже.
Этот файл содержит список всех файлов в проекте, настройки целей и какие файлы каким целям принадлежат. Вероятно, это самый объемный файл в комплекте проекта. Вы не должны игнорировать этот файл. Для этого есть несколько моментов:
источник
Это единственный файл, который вы хотите добавить в свои репозитории из пакета xcodeproj. Этот файл содержит всю информацию о целевых файлах и настройках сборки.
источник
К сожалению, если ваши настройки сборки включают подпись кода, вам придется повторно вводить объект подписи кода после каждого «git pull», если другой член команды изменил ее. Мне кажется, эта информация должна быть в настройках пользователя, а не в глобальном файле pbxproj.
источник
Если вы исключите project.pbxproj, сборки Jenkins завершатся ошибкой. Так что это важно, если вы используете Jenkins.
источник
Я обнаружил, что мне также нужно сохранить файл (ы) xcworkspace. В противном случае проект с подпроектом разорвался.
источник
Вы можете использовать Xcodegen для создания pbxproj из файла спецификации проекта YAML, тогда вы можете игнорировать pbxproj в git и генерировать их каждый раз, когда вам нужно.
Я уже использовал Xcodegen во втором проекте с модульной архитектурой (много pbxprojs), и над ним работают более 8 разработчиков.
https://github.com/yonaskolb/XcodeGen
Надеюсь, поможет.
источник
Вот мой общий
.gitignore
для моего проекта Xcode.источник