ios – 优化工作流程以更新内部拥有的cocoapods依赖项?

ios – 优化工作流程以更新内部拥有的cocoapods依赖项?,第1张

概述假设我有一个主要的项目A,其中有几个 cocoapods依赖项(由我们组织的cocoapods repo内部拥有). 假设我正在研究项目A,并且在处理它时我发现了对DependencyB的修复,所以我修改了该依赖项中的代码,同时仍然在ProjectA的Xcode项目上. 什么是将依赖项上的更改推送到自己的存储库然后在项目A中更新该依赖项的最佳工作流程? 我真的想要一些方法,以避免,完全自动化或简化 假设我有一个主要的项目A,其中有几个 cocoapods依赖项(由我们组织的cocoapods repo内部拥有).

假设我正在研究项目A,并且在处理它时我发现了对DependencyB的修复,所以我修改了该依赖项中的代码,同时仍然在ProjectA的Xcode项目上.

什么是将依赖项上的更改推送到自己的存储库然后在项目A中更新该依赖项的最佳工作流程?

我真的想要一些方法,以避免,完全自动化或简化以下工作流程(这是一个PITA)

Worflow避免

> git clone git@github.com:Onganization/DependencyB.git
>在依赖项目中进行更改(与修复我在处理项目A时发现的问题时所做的更改相同)
>更新DependencyB.podspec文件

s.version = "0.1.7"s.source = { :git => "https://github.com/Organization/DependencyB.git",:tag => "0.1.7" }

>承诺&标记此依赖项的版本

git add -Agit commit -m 'Made some changes'git tag -a 0.1.7 -m 'This is an awesome tag :D'git push origin mastergit push --Tags origin

>更新organiazation的私人cocoapods回购(我存储在〜/)

cd ~/.cocoapods/OrganizationPrivateRepo/CoverFluxmkdir 0.1.7cd 0.1.7

>将更新后的DependencyB.podspec复制到组织的私人仓库(克隆在〜/ .cocoapods中)

~/.cocoapods/OrganizationPrivateRepo/DependencyB/0.1.7/CoverFlux.podspec

>提交私人存储库中的更改&推到远程

cd ~/.cocoapods/OrganizationPrivateRepo/git commit -am 'Added version 0.1.7 to DependencyB spec'git push origin master

>最后进入初始的’Project A’文件夹并进行更新

pod update

注意:

Project的pod文件如下所示:

platform :ios,'6.0'    pod 'DependencyB'
解决方法 以下是一些简化工作流程的提示.除此之外,您可能需要考虑制作一些额外的脚本.

首先,我建议您将podspec文件保存在项目的根目录中.因此,DependencyB.git将具有文件DependencyB.podspec.

简化第3步

更改源标记以引用该版本.这样,您只需要更改podspec中的版本行.

s.source = { :git => "https://github.com/Organization/DependencyB.git",:tag => "#{s.version}" }

简化步骤5,6和7

从DependencyB.git目录运行以下命令. (假设你有我的podspec,如上所述)

pod push OrganizationPrivateRepo DependencyB.podspec

如果DependencyB.podspec是唯一的podspec文件,您甚至不需要将其包含在该行中,从而产生:

pod push OrganizationPrivateRepo

第4步

最后,我认为简化第4步是可能的,但这是组织和个人开发人员之间不同的事情之一,因为它是他们工作流程的一部分.例如,我通常从我的IDE提交.

这些脚本可以集成到podspec中,以便更新s.version值.或者,从s.version值中获取正确的标记.

更新:简化第2步

看起来你要对DependencyB进行两次更改.您可以让CocoaPods设置符号链接.在ProjectA的Podfile中,设置以下内容:

pod 'DependencyB',:path => "../path/to/DependencyB'

您现在可以在ProjectA中编辑DependencyB中的文件.进行此更改后,您需要运行pod update.之后,对源的更改将立即可用,因为它是一个符号链接.我在做这个时从Xcode提交Git提交时遇到了麻烦,但除此之外它运行良好.

总结

以上是内存溢出为你收集整理的ios – 优化工作流程以更新内部拥有的cocoapods依赖项?全部内容,希望文章能够帮你解决ios – 优化工作流程以更新内部拥有的cocoapods依赖项?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1056278.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存