升级到Snow Leopard / XCode 3.2可能出现的问题?
-
05-07-2019 - |
题
我是一对在iPhone / iPod应用程序上合作的程序员之一。我想升级到XCode(3.2)和Snow Leopard的新版本,但我的合作伙伴可能不会。任何人都可以强调我们可能有共享代码的问题吗?旧的和新的之间是否存在不兼容性,或者我们是否应该能够愉快地共享代码/项目?
任何帮助/警告都将不胜感激。
解决方案
在这种情况下我有两台机器,其中一台是SL / 3.2和一台Leopard / 3.1。对于我在两者之间分享的一个项目,它似乎有效。但正如马克指出的那样,并不能保证它会在所有情况下都有效。
我没有尝试过这个,但是可能会让你使用3.2中的项目文件而你的伙伴使用3.1项目文件。不要检查它,只使用源代码管理中的源文件,保持项目文件本地。我在Visual Studio的版本之间做了这个,这是促使这个想法的原因,但是虽然听起来不错,但我不知道它在实践中会有多好。
另一种方法是在您的机器上保留两个版本的Xcode(搜索SO或iphonedevsdk.com以获取操作方法)。我已经通过OS 3.0测试版做到了这一点,但这假设Xcode 3.1在SL机器上生活愉快。可能是最安全的尝试,因为最糟糕的是3.1将不会在SL上安装或运行。
其他提示
如果你决定尝试至少尝试操作OS / Xcode环境,你应该设置你的共享Xcode项目的项目设置“General”。选项卡,项目格式为“3.1”因为如果你将项目升级到3.2,那么3.1 Xcode可能会在打开它时遇到问题。
不要这样做。 Xcode项目文件非常脆弱,并且在版本之间并不总是兼容。当他们在版本之间进行已知不兼容的更改时,您将收到警告,打开新版本上的文件。 3.2 vs 3.1没有这样的警告,但这并不能保证你不会有任何问题。
我应该澄清一点,我并不是说你永远不应该升级,只是你和你的伴侣应该同时升级。
您的合作伙伴应该更新。它只有29美元!有很多有用的新功能,总时间大约是一个小时(如果你包括备份会有点长,但是你们都已经在进行常规备份了,对吗?)。
我在3.2和3.1的混合团队中待了一段时间,它确实有效 - 但那是一两次XCode更新。
您可以选择保留不同的项目文件,每次添加新文件,另一个添加它们,真的很安全......
我同意您应升级,但要注意,您可能需要调整代码。
我特别注意到NSAlert工作方式的不同。在10.5中,我传递了一个变量“窗口”。作为参数并创建在该特定窗口上打开的工作表。在10.6中,完全相同的代码生成了模态对话框。然后我改变了“窗口”。到“[自我窗口]”这张纸又回来了。
我对Core Data也有一个小问题,它会抛出警告“无法在NSManagedObject类XXX上调用指定的初始化程序”。即使这段代码在10.5下完全测试过。
我相信还有其他较小的问题,但我将它们与真正的错误一起修复,并没有记下它们。