【问题标题】:Cocoapod: how to push spec to my private repo without lint?Cocoapod:如何在没有 lint 的情况下将规范推送到我的私人仓库?
【发布时间】:2015-10-19 04:57:00
【问题描述】:

我有自己的 cocoapod,它是 C++ 库的包装器,因此如果没有每个架构师的共享库,就无法使用它。我宁愿在使用这个 cocoapod 的项目中添加*.a,所以 cocoapod 在 linting 时显然无法链接。如何将 podspec 推送到我的私人仓库跳过 lint?

【问题讨论】:

  • 您愿意使用包装器分发源代码还是仅分发静态库?是否可以选择使用静态框架?
  • 只是包装源。我使用该库的项目需要为特定目标编译库并添加到项目中。

标签: ios macos cocoapods lint


【解决方案1】:

当我需要这样做时,我会执行以下步骤:

  1. 使用文本编辑器打开 CocoaPods 脚本文件:

    ❯原子/Library/Ruby/Gems/2.0.0/gems/cocoapods-trunk-1.2.0/lib/pod/command/trunk/push.rb

  2. 注释验证行:

  1. 再次尝试发布 pod。

不要忘记撤消更改。如果项目维护者没有为此添加标志,他们有他们的理由。

【讨论】:

  • 要查找 push.rb,您可以使用 pod trunk push --verbose。这将记录文件位置。在 rvm 或类似情况下会派上用场。
【解决方案2】:

由于没有回答,我认为这是不可能的,或者这不是一个好习惯。所以我在 repo 中创建了公共 repo 目录结构,复制了 PodSpec 文件并提交/推送它。之后我就可以像使用pod repo push ...推送一样使用它了

【讨论】:

  • 感谢您的提示!对于任何感兴趣的人,在 cocoapods 文档中的“3.将您的 Podspec 添加到您的 repo”下定义了正确的 repo 结构:guides.cocoapods.org/making/private-cocoapods.html
  • 我不明白您的设置是什么绕过了验证。你能再解释一下吗?你的意思是你把你的 repo 做得很薄 - 只是为了你可以通过验证。然后再次推送到同一版本并推送所有文件——包括导致 lint 失败的文件?
猜你喜欢
  • 2017-07-19
  • 1970-01-01
  • 2021-08-22
  • 2015-04-05
  • 1970-01-01
  • 2022-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多