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

.gitignore для всего, что находится внутри папки xcuserdata, не игнорирует файл xcuserstate

Я работаю над проектом Xcode, и я пытаюсь настроить .gitignore, чтобы не получить что-либо внутри папки xcuserdata.

У меня есть следующий .gitignore:

# Xcode
.DS_Store
*/build/*
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
profile
*.moved-aside
DerivedData
.idea/
*.hmap
xcuserdata/*

но каждый раз, когда я создаю/запускаю проект и выполняю git status, он все еще показывает следующий файл с расширением:

modified: MyProject.xcodeproj/project.xcworkspace/xcuserdata/fernando.xcuserdatad/UserInterfaceState.xcuserstate

Кто-нибудь знает, что случилось?

4b9b3361

Ответ 1

Я нашел решение

проблема не в файле .gitignore

проблема заключалась в том, что UserInterfaceState.xcuserstate, который не был удален с сервера git, нашел решение по следующей ссылке:

Нельзя игнорировать UserInterfaceState.xcuserstate

Ответ 2

Дополнительная информация

Я также столкнулся с этим и, похоже, не работает, поскольку .gitignore все еще добавляет их после совершения. То, что я добавил, прелести для меня

.... это не может быть прочитано с помощью .gitignore:

xcuserdata/*

добавление этого работает для меня:

*xcworkspace/xcuserdata/*

или для чтения:

*/xcuserdata/*

Ответ 3

Для меня ничего не сработало, но это

добавьте эту строку в свой gitignore

*.xcuserdata

Ответ 4

FWIW, моя папка xcuserdata НЕ отслеживалась еще git и все еще отображалась в git status. Проблема заключалась в том, что у меня было пробел перед xcuserdata в моем .gitignore файле.

Ответ 5

Если вы использовали git, вы можете добавить.gitignore

# Xcode
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
*.moved-aside
DerivedData
.idea/
*.xccheckout
*.moved-aside
xcuserdata/
*.hmap
*.ipa
*.xcworkspace
*.xcuserstate // <--- Here
!default.xcworkspace

Ответ 6

Ничто не сработало, но это для меня, так как я хотел зафиксировать блоки, в которых также есть .xcuserdata:

**/xcuserdata/*

Ответ 7

Вы могли бы просто сделать

 git checkout -- <file>..." to discard changes in working directory

Пример:

   modified:
        mySwa.com.xcworkspace/xcuserdata/bibscy.xcuserdatad/UserInterfaceState.xcuserstate

   git checkout -- mySwa.com.xcworkspace/xcuserdata/bibscy.xcuserdatad/UserInterfaceState.xcuserstate