.gitignore for xcuserdata文件夹中的所有内容都不会忽略xcuserstate文件

时间:2013-03-26 19:47:59

标签: xcode git gitignore

我正在使用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

有人知道什么是错的吗?

10 个答案:

答案 0 :(得分:31)

我找到了解决方案

问题不在.gitignore文件中

问题是没有从git服务器中删除的UserInterfaceState.xcuserstate,在以下链接中找到了解决方案:

Can't ignore UserInterfaceState.xcuserstate

答案 1 :(得分:4)

其他信息

我也遇到了这个,似乎没有用,因为.gitignore在提交后仍然添加它们。我添加的内容对我有魅力

.... 这不能被.gitignore读取:

var table_width = $("#t1").width()
$("#t1, #t2").width(table_width);

添加此功能对我有用:

xcuserdata/*

或将被阅读:

*xcworkspace/xcuserdata/*

答案 2 :(得分:1)

对我来说没什么用,但是这个

将此行添加到您的gitignore

*.xcuserdata

答案 3 :(得分:1)

对我来说,这没什么用,因为我想提交包含.xcuserdata的Pod:

**/xcuserdata/*

答案 4 :(得分:1)

除了将 *.xcuserstate 添加到您的 .gitignore 文件之外,请记得删除您缓存的 *.xcuserstate

git rm --cached [YourProjectName].xcodeproj/project.xcworkspace/xcuserdata/[ YourUsername].xcuserdatad/UserInterfaceState.xcuserstate

https://www.programmersought.com/article/1594916500/

答案 5 :(得分:0)

FWIW,我的xcuserdata文件夹尚未被git跟踪,并且仍在git status中显示。问题是我的.gitignore文件中xcuserdata之前有一个空格。

答案 6 :(得分:0)

如果您使用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

答案 7 :(得分:0)

您只需完成

 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

答案 8 :(得分:0)

这个问题来得很晚,但是这个站点帮助我解决了这个问题:

https://www.gitignore.io/

专门使用标签swiftxcode生成以下内容:

https://www.gitignore.io/api/xcode,swift

答案 9 :(得分:0)

我在这里看不到任何逻辑。 但是,就我而言, xcuserdata/ 到.gitignore文件的最下方。