Xcode git不能忽略所有* .xcodeproj / xcuserdata /文件夹

时间:2018-05-10 03:07:58

标签: xcode git gitignore

我关注了cant-ignore-userinterfacestate-xcuserstateignore-files-that-have-already-been-committed-to-a-git-repository。但这些永远不会奏效。

我的步骤复制:

  1. 退出Xcode
  2. 项目目录:git rm -r --cached .
  3. 项目目录:git add . && git commit -m "remove junk files"
  4. 打开Xcode项目
  5. 然后再次显示这些文件。
  6. 最让我困扰的是,每次我重新设置代码都会自动显示这些文件,所以我会重新设置unstage文件的失败。每次我需要存储这些文件。

    这是我的.gitignore文件代码部分:

    ### Xcode Patch ###
    *.xcodeproj/*
    !*.xcodeproj/project.pbxproj
    !*.xcodeproj/xcshareddata/
    !*.xcworkspace/contents.xcworkspacedata
    /*.gcno
    
    *.xcodeproj/xcuserdata/
    

    source tree want to ignored files

    my xcode project structure

    this is a react-native project

1 个答案:

答案 0 :(得分:1)

我刚刚意识到这些want to ignored文件已隐藏在深层文件夹中。

并且git不支持这种模式*.xcodeproj/xcuserdata/

想要忽略其他儿子(递归)文件夹需要将其添加到.gitignore:

ios/**/*.xcodeproj/xcuserdata/

或干净的方式:

**/xcuserdata/

**/*.xcodeproj是git版本1.8.2的功能。

$ git --version
git version 2.16.1

所以我们大多数人都可以使用它。

我从how-to-gitignore-files-recursively学到了。