Подтвердить что ты не робот

Xcodeproj под управлением версии

Каковы наилучшие методы, включая проект Xcode под управлением версии.

4b9b3361

Ответ 1

Это то, что находится в моем Глобальном .gitignore файле, который вы можете видеть как gist в GitHub, но список Xcode можно применить к другим системам

# Mac OS X
*.DS_Store

# Xcode
*.pbxuser
*.mode1v3
*.mode2v3
*.perspectivev3
*.xcuserstate
project.xcworkspace/
xcuserdata/

# Generated files
*.o
*.pyc

#Python modules
MANIFEST
dist/
build/

# Backup files
*~.nib
\#*#
.#*

Ответ 2

Проверить project.pbxproj, игнорировать файлы, определенные пользователем.

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

Вы получите конфликты слияния в project.pbxproj, будьте готовы справиться с этим и попытайтесь свести к минимуму трудности их решения.

  • Имейте согласованную структуру, где файлы должны быть на диске и как это сопоставляется с группами в Xcode.
  • Отсортируйте ресурсы, включенные в ваши цели сборки, и порядок ресурсов в ваших проектных группах. Мне действительно нужно написать script, чтобы сделать это для меня, потому что гораздо легче определить причину конфликта слияния, когда вам не нужно различать два случайных набора файлов. Он также избегает многих конфликтов слияния, поскольку у вас меньше вероятность, что несколько разработчиков добавят новые ресурсы в нижней части списка.

Заходите рано и часто.

Ответ 3

В моем проекте у меня есть Project.xcodeproj/project.pbxproj в управлении версиями и оставьте файлы User.mode1v3 и User.pbxuser.

project.pbxproj, похоже, содержит метаданные для проекта, например, где находятся файлы и какие параметры сборки.

Пользовательские файлы будут иметь такие вещи, как открытые файлы, где курсор и т.д.

Вы также можете обратиться к ЭТО вопрос о том, какие файлы некоторые люди выбрали для игнорирования.