如何使Xcode连续集成服务执行浅git克隆?

如何使Xcode连续集成服务执行浅git克隆?,xcode,git,osx-mavericks,Xcode,Git,Osx Mavericks,我刚刚用Xcode CI()安装了新的OSX服务器 我已经成功地为我的项目设置了CI,但是主git repo的子模块非常大(它包含版本控制的映像,而不是代码) 出于性能和空间相关的原因,我希望CI在获取子模块时使用浅层克隆,而不是完整克隆。有没有办法配置CI来实现这一点 或者有没有其他方法可以加快进程?git有可能,问题是Xcode CI 使用git存储大的二进制图像是反模式的,所以从行为上来说,它可能永远都不是一个最佳匹配。出于Xcode的考虑,理想情况下,您根本不会为此目的使用git,只需将

我刚刚用Xcode CI()安装了新的OSX服务器

我已经成功地为我的项目设置了CI,但是主git repo的子模块非常大(它包含版本控制的映像,而不是代码)

出于性能和空间相关的原因,我希望CI在获取子模块时使用浅层克隆,而不是完整克隆。有没有办法配置CI来实现这一点

或者有没有其他方法可以加快进程?

git有可能,问题是Xcode CI

使用git存储大的二进制图像是反模式的,所以从行为上来说,它可能永远都不是一个最佳匹配。出于Xcode的考虑,理想情况下,您根本不会为此目的使用git,只需将构建过程检索单个映像的脚本编写到CI中(例如,通过rake或gradle任务、wget、curl、scp等)。如果它确实是一个图像目标,您可能有能力引用它,如以下jar文件:

CI对目标的其他可能状态的可用性或修订历史记录不感兴趣。它只是想实现依赖性

如果您必须使用
子模块
,您可以设置自己的称为[该子模块]\u current的精简内部回购目标,该目标仅具有您想要的单一状态。将其吹走,必要时更换


请注意,Xcode显然有一个,因此这意味着它们需要一段时间才能处理其他稍微更奇特的子模块选项,如
--depth

嗨,我们正在谈论cocos2d存储库。它不是二进制的,只有几千次提交。所以它不是版本控制的图像?数千次代码提交是相当常见的。您想要的是:
git clone--depth 1--branch master--single branch
,但是Xcode在
--depth
中被破坏了。是的,这正是我想要的。这就是我通常做的。我的问题是“我如何使xCode服务器做到这一点?”这是绝对清楚的,因为这个问题是前一段时间提出的,可能会出现混淆——我的项目有几个子模块。一个是艺术报道,其中包含“版本控制图像”。另一个是cocos2d库,它没有。这两个都是子模块,都需要很长时间才能签出。不幸的是,Xcode目前无法通过其正常配置通道处理
--depth
(或任何分离的磁头)。我没有解决这个问题的办法。这是一个严重的限制性错误。