Cocoapods 每次都需要通过 dropbox 同步在不同的计算机上更新 bolts 框架
Cocoapods requires update each time on different computers through dropbox sync for bolts framework
我的设置:
- Xcode Dropbox 文件夹中的项目
- 已安装 Cocoapods
- Parse 在我的 podfile 中,它需要 Bolts 框架
每次我在另一台计算机上编辑工作区后加载它时,Xcode 抱怨 class 'BFAppLink' 的重复接口定义(来自 Bolts 框架).这是由 "pods update" 修复的。
有什么想法吗?
pod 更新可能正在重写您的 Xcode 项目并删除重复的文件导入。除了将项目存储在 Dropbox 上,您能否将其存储在像 git 这样的实际 SCM 系统中,也许使用像 GitHub 或 BitBucket 这样的服务?
这里有一些清单可能会解决您的问题:
- 您的整个项目是否都被复制到 Dropbox 中?您的
/Pods
目录 project.xcworkspace
被复制过来了吗?
如果您复制全部内容,例如,压缩整个项目并在新机器上解压,您应该可以运行在任何没有安装 cocoapods 的机器上
该项目。
bolt框架是通过cocoapods添加的吗?如果你有框架的手动引用,不同版本的路径可能不同。
您是否在所有机器上使用相同版本的 cocoapods?
机器之间的不同版本的 cocoapods 可能会导致问题,例如您观察到的问题。
$ pod --version
正如 jshier 提到的,考虑使用 bitbucket 或 github 作为版本控制。 SourceTree 是一个很好的 git 客户端。
我 运行 遇到了与 Dropbox 和 Parse pod 相同的问题。我调查并发现 CocoaPods 保留指向您在 ./Pods/Headers 中的 header 的符号链接,出于某些原因,Dropbox 实际上会在另一台计算机上复制文件,而不仅仅是复制符号链接。
当您在第二台计算机上编译时,有 2 个 .h 文件副本,因此 Xcode 抱怨并且不会编译,直到您 运行 pod install(这将替换重复的 .h 文件像它应该的符号链接)。但是你的其他编译良好的计算机会将它们的符号链接替换为 header 文件的副本。
我发现解决这个问题的方法是将 /Pods/Headers 添加到 Dropbox 中的选择性同步,这样它们就不会同步。然后 运行 在你所有的电脑上安装 pod,它们应该可以编译。
希望对您有所帮助
我的设置:
- Xcode Dropbox 文件夹中的项目
- 已安装 Cocoapods
- Parse 在我的 podfile 中,它需要 Bolts 框架
每次我在另一台计算机上编辑工作区后加载它时,Xcode 抱怨 class 'BFAppLink' 的重复接口定义(来自 Bolts 框架).这是由 "pods update" 修复的。
有什么想法吗?
pod 更新可能正在重写您的 Xcode 项目并删除重复的文件导入。除了将项目存储在 Dropbox 上,您能否将其存储在像 git 这样的实际 SCM 系统中,也许使用像 GitHub 或 BitBucket 这样的服务?
这里有一些清单可能会解决您的问题:
- 您的整个项目是否都被复制到 Dropbox 中?您的
/Pods
目录project.xcworkspace
被复制过来了吗?
如果您复制全部内容,例如,压缩整个项目并在新机器上解压,您应该可以运行在任何没有安装 cocoapods 的机器上
该项目。bolt框架是通过cocoapods添加的吗?如果你有框架的手动引用,不同版本的路径可能不同。
您是否在所有机器上使用相同版本的 cocoapods?
机器之间的不同版本的 cocoapods 可能会导致问题,例如您观察到的问题。
$ pod --version
正如 jshier 提到的,考虑使用 bitbucket 或 github 作为版本控制。 SourceTree 是一个很好的 git 客户端。
我 运行 遇到了与 Dropbox 和 Parse pod 相同的问题。我调查并发现 CocoaPods 保留指向您在 ./Pods/Headers 中的 header 的符号链接,出于某些原因,Dropbox 实际上会在另一台计算机上复制文件,而不仅仅是复制符号链接。
当您在第二台计算机上编译时,有 2 个 .h 文件副本,因此 Xcode 抱怨并且不会编译,直到您 运行 pod install(这将替换重复的 .h 文件像它应该的符号链接)。但是你的其他编译良好的计算机会将它们的符号链接替换为 header 文件的副本。
我发现解决这个问题的方法是将 /Pods/Headers 添加到 Dropbox 中的选择性同步,这样它们就不会同步。然后 运行 在你所有的电脑上安装 pod,它们应该可以编译。
希望对您有所帮助