如果使用Launch Arguments,忽略/ xcuserdata / with Git是否安全?

我有一个参数在启动时传递-D DEBUG ,它允许我在我的发布应用程序中使用以下内容:

 #ifndef DEBUG /* Some code I only want to be run when using the release app */ #endif 

当我运行git status ,它显示添加-D DEBUG时文件已更改MyExampleProject.xcodeproj/xcuserdata/myusername.xcuserdatad/xcschemes/MyExampleProject.xcscheme

使用常用的Xcode .gitignore文件应该排除哪一个。 有没有其他的方式来包括这个参数符合.gitignore ,并不依赖于我的用户帐户xcuserdata

一般来说,xcuserdata可以安全地忽略个别项目。 每个用户都有他们自己的文件,可以节省userstate,打开文件夹,打开最后一个文件,等等。 它确实包含你的计划。 如果这是第一次打开和文件不存在,Xcode将为您创build。

但是,我们已经在办公室遇到了这个问题,当你有一个像Hudson或Jenkins一样的连续构build服务器时,它从Git或SVN拷贝源文件而不需要打开它并且尝试构build它。 如果你忽略这个文件,那么将不会有任何scheme可以构build,或者强制某人打开项目以便第一次自动创build它。

我们通过检查pipe理scheme下的共享框来解决这个问题。 这将这些scheme从您的个人xcuserdata下移出到一个共享文件夹中,这个文件夹可以通过源代码控制提交,并由连续构build服务器使用。 希望这可以帮助。

该文件夹只包含一些临时信息。 像Xcode和类似的属性的UI状态。 GitHubbuild议排除.gitignore文件中的xcuserdata文件夹。