Это не вопрос, основанный прежде всего на мнениях. Есть файлы, которые git всегда должен игнорировать в XCode, такие программные файлы, как xcuserdata. Выбор исключить их никоим образом не основан на мнении.
Дермот
4
Я второй Дермот на этом! Не игнорирование некоторых файлов приводит к ошибкам, поэтому существует определенная лучшая практика. Половина примеров кода, представленных в SO-ответах, может рассматриваться как мнения, поскольку существуют и другие способы ведения дел, но существуют общепринятые передовые практики и стандарты де-факто.
ярость
2
Может быть, частично закрыт, потому что здесь есть исчерпывающий ответ: stackoverflow.com/questions/49478/… . В моем исследовании вы не правы, когда говорите, что .xccheckout следует игнорировать, но это не на 100% ясно, и я зафиксировал ошибку, когда Apple просила дать официальный ответ.
Адам
Ответы:
276
1)
Самый простой ответ - мой выглядит так:
# Xcode.DS_Store
build/*.pbxuser!default.pbxuser*.mode1v3!default.mode1v3*.mode2v3!default.mode2v3*.perspectivev3!default.perspectivev3*.xcworkspace!default.xcworkspace
xcuserdata
profile*.moved-asideDerivedData.idea/# Pods - for those of you who use CocoaPodsPods
я считаю, что это тот же самый .gitignore, который GitHub устанавливает со всеми своими репозиториями по умолчанию.
не забудьте удалить xcworkspace, если вы используете какао-стручки, если интегрируете зацепки после коммита, например, с travis
Ivor Prebeg
3
Я исследовал все файлы - cf stackoverflow.com/questions/49478/… - различные, негласные участники проекта github явно не заметили (я неоднократно вижу вещи, которые должны быть там, но отсутствуют, и (что еще хуже) наоборот ). Очевидно, я не буду беспокоиться о том, чтобы отслеживать / комментировать что-то, что явно плохо поддерживается для начала :) - я просто сдался и вместо этого написал рабочий .gitignore и поделился им со StackOverflow
Что бы это ни стоило, я потратил некоторое время на изучение различных файлов Xcode и Cocoapods .gitignore, и этот, кажется, работает лучше всего для меня. Папка Pods по праву игнорируется, поскольку она является сгенерированным конечным состоянием. Также включен файл Podfile.lock, который предоставляет ценные метаданные о состоянии сборки во время различных фиксаций.
Мэтт Вукас
4
.idea/нужен только тем, кто пользуетсяAppCode
Wanbok Choi
57
Если вы создаете новый проект с нуля в Xcode 6 ... больше нет необходимости в длинном файле .gitignore, как я указывал в своем последнем посте : Apple оптимизировала стандартную структуру файлов и папок проекта, чтобы соответствовать требованиям для ясный и прямой git коммит. Apple также игнорирует два шаблона файлов по умолчанию, если вы создаете репозиторий git с шаблоном проекта Xcode:
.DS_StoreUserInterfaceState.xcuserstate
Они добавили их в ваш .git/info/excludesфайл в каталоге вашего проекта. Поэтому нет необходимости повторно игнорировать их в .gitignore :-)
Единственное, что я всегда включаю в .gitignoreфайл, это
# Exclude personal Xcode user settings
xcuserdata/
Не могли бы вы поставить третью строку в верхнюю часть, чтобы мне не приходилось копировать дважды каждый раз, когда я прихожу к этому ответу, пожалуйста? Я надеюсь, что он также получит 133 голосов!
Дэн Розенстарк
3
@ Яр ... как я описал выше: единственная строка, которая вам нужна в вашем файле .gitignore, это исключение xcuserdata /. Две другие строки уже обработаны Apple по умолчанию. Поэтому нет необходимости копировать эти три строки в ваш файл .gitignore.
кросс-код
1
Ой! Вот это да. Это на самом деле то, что я могу напечатать вручную. Отличный материал, спасибо за обмен и удачи здесь на SO.
Дэн Розенстарк
6
Обратитесь к файлу Xcode.gitignore Github, чтобы всегда иметь обновленный список файлов Xcode, которые следует игнорировать.
Ответы:
1)
Самый простой ответ - мой выглядит так:
я считаю, что это тот же самый .gitignore, который GitHub устанавливает со всеми своими репозиториями по умолчанию.
2)
Другой ответ заключается в том, что существует веб-сайт под названием «gitignore.io» , который генерирует файлы на основе шаблонов .gitignore по адресу https://github.com/github/gitignore .
источник
Pods
: guides.cocoapods.org/using/… ?.idea/
нужен только тем, кто пользуетсяAppCode
Если вы создаете новый проект с нуля в Xcode 6 ... больше нет необходимости в длинном файле .gitignore, как я указывал в своем последнем посте : Apple оптимизировала стандартную структуру файлов и папок проекта, чтобы соответствовать требованиям для ясный и прямой git коммит. Apple также игнорирует два шаблона файлов по умолчанию, если вы создаете репозиторий git с шаблоном проекта Xcode:
Они добавили их в ваш
.git/info/excludes
файл в каталоге вашего проекта. Поэтому нет необходимости повторно игнорировать их в .gitignore :-)Единственное, что я всегда включаю в
.gitignore
файл, этоисточник
Обратитесь к файлу Xcode.gitignore Github, чтобы всегда иметь обновленный список файлов Xcode, которые следует игнорировать.
источник