gpt4 book ai didi

ios - 当框架有外部依赖时,如何将 iOS 框架作为 git 子模块导入

转载 作者:行者123 更新时间:2023-12-04 13:28:15 25 4
gpt4 key购买 nike

您拥有带有自己的 Git 存储库的主项目“App”;您再次使用自己的 Git 存储库将模型分离到一个单独的框架项目“AppKit”中。 “AppKit”作为 Git 子模块导入到“App”中,一切都很愉快。
如果“AppKit”具有外部依赖项——假设由 CocoaPods 管理,那么典型的 import-as-submodule 将失败,因为“App” 不满足“AppKit”的依赖项。
我想知道在将“AppKit”作为 Git 子模块导入时是否有任何方法可以实现这一点。可以做到吗?
我知道有几个简单的解决方案 -

  • 使“AppKit”成为“Carthage”框架并导入它
  • 制作并导入“AppKit”作为 CocoaPod。

  • 我只是想要一个明确的答案(以防它不能作为 Git 子模块完成),所以我可以继续前进。
    背景:追求管理多项目应用程序的理想解决方案(欢迎其他想法/意见)
    让问题更清楚——
    如果 iOS 框架项目有自己的依赖项,它可以作为 Git 子模块导入吗?
    如果子依赖项是——
  • cocoa bean
  • 迦太基
  • Git子模块
  • 最佳答案

    git submodule 作为 Git 命令的一部分,它本身没有 CocoaPod 依赖项的概念。
    Cocoa 依赖管理器本身确实有这样的依赖的概念,声明为子模块,并像这样管理 since CocoadPod 0.1.20 (如 explained here )。
    这意味着:如果 AppKit 本身是一个 CocoaPod,它可以将自己的依赖项声明为 Git 子模块,并且 CocoaPod 将管理(加载)它们,前提是您自己的项目要求这些依赖项,使用 :submodules => true

    s.source   = { :git => 'https://github.com/<you>/AppKit.git', :tag => "2.1.0", :submodules => true }
    所以:

    Can an iOS framework project be imported as a Git Submodule if it has dependencies of its own.


    如果该项目作为 CocoaPod 导入,则 Cocoa 依赖项管理器可以处理导入的项目依赖项(如果它们是 git 子模块)。
    但是如果导入的项目只是一个 Git 子模块(没有被声明/导入为 CocoaPod),Git 本身不会将所述依赖项作为“CocoaPod”进行管理(因为它对 XCode 项目依赖项一无所知)。

    关于ios - 当框架有外部依赖时,如何将 iOS 框架作为 git 子模块导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66793475/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com