无论我做什么,即使我的主应用程序报告我的内部库指向1.1,我仍然获得与1.0相同的代码.我很难过.
我已经验证的事情:
>我的私有pods repo具有正确的文件夹结构,每个文件夹中的.podspec文件都有适当的s.version
>我的内部pods repo上的两个podspec文件的文件比较,并确认对文件的唯一更改是版本号.
>在内部库的repo上有一个git checkout标签/ 1.1,并确认1.1标签包含相应的提交.
>通过BitBucket网站确认文件发生了变化,1.1的标签就在那里.
我还尝试了以下方法来解决它(我现在能记住)并且仍然在Pod中添加了相同的代码.
>从Podfile中删除违规的pod,运行pod update以删除它,重新添加它,然后再次运行pod update.
>清除〜/ Library / Caches / CocoaPods和[ProjectRoot] / Pod并运行pod install.
>通过pod repo删除我的远程pod repo,删除[NAME],然后以其他名称重新添加.
>将podspec指向:head
>将podspec指向我想要的特定提交.
>将podspec指向我本地的图书馆副本.
所有这些疯狂都指向git或Xcode的某种缓存问题,但是在详细模式下运行CocoaPods似乎没有显示除了超级临时缓存路径以外的任何内容,第二个pod更新已完成.
有人有任何进一步的建议吗?这让我开始香蕉.
更新1/24:我在单独的用户名下检查了代码并得到了一些奇怪的行为:
pod install Analyzing dependencies Downloading dependencies Installing [Private Library] (1.0) Installing Google-Mobile-Ads-SDK (6.7.0) Installing LARSAdController (3.0.3) Installing UIAlertView-Blocks (0.0.1) Generating Pods project Integrating client project [!] From now on use `[App Name].xcworkspace`.
有趣的是,我认为它抓住了1.0版本,即使我没有在Podfile中指定任何版本.那么我跑了:
pod update Analyzing dependencies Downloading dependencies Installing [Private Library] (1.1) Using Google-Mobile-Ads-SDK (6.7.0) Using LARSAdController (3.0.3) Using UIAlertView-Blocks (0.0.1) Generating Pods project Integrating client project
即使版本号递增,代码也不会改变.所以这指向了我搞砸了而不是缓存问题 – 但如果我这样做了,为什么它到底会抓到1.0版呢?有什么想法吗?
解决方法
我将CocoaPod指向/ [Project Root] / Library(当我尝试移动到git子模块时,最初在那里查看),但是当我在库项目中将该文件夹拖到Xcode中时,我会意外地离开了“复制项目到目的地组的文件夹(如果需要)”复选框.这创建了/ [Project Root] / [Subfolder] / Library,我的所有更改实际上都在进行中.一旦我解决了这个问题,惊喜一切,一切正常.
所以,呃,我想这里的教训是,如果你已经在兔子洞里走了这么远,退后一步,确保甚至还有一只兔子你需要追逐开始.