我在创建私有存储库时出错。这是我采取的步骤:
1.创建文件夹,运行pod lint create PrivateRepo
并设置值
1.在BitBucket中创建私有仓库
1.在PrivateRepo文件夹中运行以下命令:
命令:
git add .
git commit -m “Initial Commit"
git remote add origin https://Username@bitbucket.org/Username/privaterepo.git
git push -u origin master
1.更改我的podspec中的摘要和主页,并将上面的bitbucket链接设置为source
1.运行以下命令:
命令:
git tag 0.1.0
git push origin 0.1.0
1.运行pod spec lint --swift-version=4.1现在通过验证
1.运行以下命令:
命令:
pod repo add PrivateRepo https://Username@bitbucket.org/Username/privaterepo.git
pod repo push PrivateRepo PrivateRepo.podspec --swift-version=4.1
1.到目前为止,没有发生任何错误。然而,当我想将pod安装到我的其他项目中时,我得到一个错误:PrivateRepo
存储库中的/Users/Username/.cocoapods/repos/PrivateRepo/PrivateRepo
Pod遇到意外的版本目录Classes
。
这是我在其他项目中的podfile:
source 'https://Username@bitbucket.org/Username/privaterepo.git'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, ’10.3’
target 'OtherProject' do
use_frameworks!
pod 'PrivateRepo'
end
这是我的podspec文件:
Pod::Spec.new do |s|
s.name = 'PrivateRepo'
s.version = '0.1.0'
s.summary = 'test'
s.description = <<-DESC
TODO: Add long description of the pod here.
DESC
s.homepage = 'https://google.com'
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'Username' => 'Username@hotmail.com' }
s.source = { :git => 'https://Username@bitbucket.org/Username/privaterepo.git', :tag => s.version.to_s }
s.ios.deployment_target = '8.0'
s.source_files = 'PrivateRepo/Classes/**/*'
end
3条答案
按热度按时间w8f9ii691#
看起来你已经差不多了,但是还没有设置你的podspec仓库(这是一个推荐的步骤:https://guides.cocoapods.org/making/private-cocoapods.html)。
在您的Podfile中,尝试将repo的源URL替换为spec的源URL。例如:
我还发现这篇文章对设置私人回购很有帮助:https://medium.com/practical-code-labs/how-to-create-private-cocoapods-in-swift-3cc199976a18
编辑
在我们的项目中,我们现在直接URL到pod文件中的git源代码,因为它允许我们快速更改pod中的分支,并意味着您可以删除我上面提到的2个
source
行。无论哪种方式都可以:)。下面是一个在pod文件中直接使用git项目的URL的示例:
pod ‘PrivatePod’, :git => "git@github.com:Test/privatepod.git"
jv4diomz2#
遇到这个问题是因为:
基本上
1.0.1_customBuild_90
不是标准的。v09wglhw3#
由于时间限制,我使用
:git
方法临时导入一个私有pod。这次我又遇到了同样的问题。幸运的是,我找到了LocoMoviles的video tutorial和CocoaPods的官方Specs。通过学习和借鉴,我终于有了顿悟,成功地解决了这个问题。
pod源代码仓库和PodSpecs仓库不是同一个概念。
下面是一个使用名为APrivatePod的pod的示例:
APrivatePod的文件结构如下:
PodSpecs存储库的文件结构如下:
有了上面的概述和下面我从官方网站上捕捉到的图片,错误的原因就很明显了。
上面的答案是我写的,由OpenAI翻译成英文。