Xcode 构建在 Subversion 控制下失败(使用版本)

Posted

技术标签:

【中文标题】Xcode 构建在 Subversion 控制下失败(使用版本)【英文标题】:Xcode build fails under Subversion control (using Versions) 【发布时间】:2012-10-07 20:05:28 【问题描述】:

我有这个 Xcode 项目,用于构建 App Store 应用程序(代码由 Titanium Appcelerator 生成)。到目前为止,它运行良好。

但是当我将我的项目添加到 subversion(使用版本)并检查它时,我的构建开始失败。

Xcode 抛出的错误信息是:

[ERROR] While reading /Users/ [some long local path] /._startup.png pngcrush caught libpng error

这看起来像是一个图像压缩错误,但我没有名为“._startup.png”的图像,但我有一个名为“startup.png”的图像。所以这让我查看了位于我的图像旁边的 .svn/entries 文件,其中包含字符串“._startup.png”。

我的问题是;我该如何解决?

我希望我的项目使用版本进行版本控制,但它显然与 Xcode 的构建过程相冲突。

【问题讨论】:

【参考方案1】:

我通过从项目中删除 png 并用 jpg 替换它来“解决”问题。然后我承诺了,清理了项目并进行了测试构建,这很有效。然后我再次将 png 添加到项目中并提交,清理项目并重建。这似乎奏效了,我真的不知道提到的 SVN 文件可能是什么问题。

【讨论】:

【参考方案2】:

您应该将原始代码存储在 svn/Versions 中。不是编译后的代码。

由于您已经在 Titanium 中编写了应用程序,因此您最好还存储 Titanium 代码。生成的代码不是很有用,也不是很好维护。

编辑:

显然你已经这样做了,这就是你的答案:https://wiki.appcelerator.org/display/tis/Subversion

【讨论】:

实际上我没有将编译后的代码存储在 SVN 中,但看起来 Titanium 构建脚本从我的 Resources 目录复制了我的 SVN 引用(并且我需要我的 Resources 在版本控制下)。 为什么不在 Titanium Studio 中使用 git 中的构建? 我真的不觉得这是使用另一个 SVN 客户端的答案。我还没有验证这是否真的解决了问题,但我不明白为什么会这样,这个问题似乎与 Subversion 无关,而与 Titaniums 构建过程无关。

以上是关于Xcode 构建在 Subversion 控制下失败(使用版本)的主要内容,如果未能解决你的问题,请参考以下文章

使用 Subversion 构建 PHP 项目的生产版本

工作副本需要比 Xcode 支持的更新版本的 Subversion

如何理顺我的 Git 本地存储库(我使用了 XCode 的源代码控制)

Xcode 10.2.1 界面构建器 - 无法在视图控制器(或文档大纲)上移动(拖动)UI 元素

如何在 Windows 服务器上使用 collabnet subversion edge 设置 SVN 服务器,以及如何在 Mac 上使用 Xcode 远程连接到它?

Apache+SVN构建代码仓库平台