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

squ*_*rog 54 git xcode

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

#ifndef DEBUG
    /* Some code I only want to be run when using the release app */
#endif
Run Code Online (Sandbox Code Playgroud)

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

应使用常用的Xcode .gitignore文件排除哪个.有没有其他方法可以包含符合.gitignore并且不依赖于我的用户帐户的参数xcuserdata

Bil*_*ess 97

通常,xcuserdata对于单个项目是安全的.每个用户都有自己的文件来保存用户,打开文件夹,打开最后一个文件,这类东西.它确实包含您的计划.如果它是第一次打开并且文件不存在,Xcode将为您创建它.

但是......当你有一个像Hudson或Jenkins这样的连续构建服务器时,我们已经在办公室遇到了这个问题,它从Git或SVN复制源代码而不打开它并尝试构建它.如果忽略此文件,则不会构建任何方案,或者它会强制某人打开项目以便第一次自动创建它.

我们通过检查管理方案下的共享框解决了这个问题.这会将方案从您单独的xcuserdata下移到一个共享文件夹中,该文件夹可以通过源代码控制提交并由连续构建服务器使用.希望这可以帮助.


mih*_*iho 16

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

  • 取决于什么样的计划.共享方案(参见`Manage Schemes`)存储在项目文件中,不会丢失,但本地方案存储在`xcuserdata`中. (3认同)