如何设置Carthage以使用我自己的框架,这些框架位于私有代码仓库(例如Bitbucket)中?

19
我想知道Carthage是否有类似私有库的功能,我有几个框架,目前正在使用git子模块。我开始在一个新项目中使用Carthage,它非常不错,但到目前为止,我只是将其配置为管理第三方框架依赖项。我查看了carthage文档,但对如何设置它并不清楚。 Carthage只能用于Github仓库吗?它能与Atlassian-Stash(现在是Bitbucket)一起使用吗?如果可以,如何做?
3个回答

34

所以我终于找到了如何使用 Atlassian-Bitbucket 配置 Carthage 的方法

Cartfile 中,我只需要定义依赖项来源,即 git 存储库

企业级 git 存储库,比如 Atlassian-Stash(Bitbucket)

git "https://stashRepo" 

它还与 ssh:// 一起使用。

或本地项目

git "file:///directory/to/project" "branch"  

更新

Carthage现在在Cartfile中增加了关于OGDL如何工作的额外文档。


3
git "file:///directory/to/project" "branch"Git "file:///directory/to/project" "branch" - harshit2811
1
您也必须提交到本地分支。未提交的更改将不会构建。 - Mike Taverne

0

Cartfile源位置

[依赖管理器]

github - GitHub存储库

github "<owner>/<repo>" //GitHub.com
github "https://<path>" //GitHub Enterprise Server

git - Git 代码仓库

git "https://<path>" //remote
git "ssh://<command>" //ssh connection
git "file:///<path>" "<branch_name>" //local

二进制 - 预编译二进制文件

binary "https://<path>.json" //remote
binary "file:///<path>.json" //local

请注意,file:/ 用于本地文件,在开发/调试依赖关系时非常有用。 在使用 git 之前不要忘记提交更改。

[本地 CocoaPods] [本地 SPM]


0

Carthage开发框架的解决方案

为了以类似于使用CocoaPods开发Pods的方式编写框架,有一些可以与Carthage一起使用的解决方案。

解决方案1 - 本地路径方式

这种解决方案比其他替代方案更加方便。

步骤1. 将本地路径添加到Cartfile中

例如,

将本地路径添加到Cartfile中

git "PATH_TO_LOCAL_DEVELOPING_FRAMEWORK_SOURCE_ROOT_DIRECTORY" "BRANCH_NAME"

步骤2. 更新Carthage依赖

例如,

使用Cartfile更新Carthage依赖

$ carthage update $DEVELOPING_FRAMEWORK_NAME --platform iOS --cache-builds --configuration Debug

为了在主项目中使用断点调试或开发框架,请将开发框架项目引用$(DEVELOPING_FRAMEWORK).xcodeproj添加到主应用程序中,并在Xcode中构建主应用程序。

注意事项

在提交更改到远程仓库之前,删除开发开销(例如由于添加开发框架项目引用而导致的$(MAIN_APP_NAME).xcodeproj/project.pbxproj中的更改)。

解决方案2-符号链接方式

测试环境

  • Xcode 10.1
  • macOS 10.13.6

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接