从项目中删除CocoaPods的正确方法是什么?我想移除整个CocoaPod。由于客户的限制,我不能使用它。我只需要一个xcodeproj,而不是一个xcworkspace。


当前回答

pod deintegrate和pod clean是从你的项目/回购中删除CocoaPod的两个指定命令。

下面是完整的命令集:

$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod cache clean --all
$ rm Podfile

最初的解决方案是在这里找到的:https://medium.com/@icanhazedit/remove-uninstall- deintegre-cocoapods-from-your-xcode -ios-project-c4621cee5e42#.wd00fj2e5

关于pod分解的CocoaPod文档:https://guides.cocoapods.org/terminal/commands.html#pod_deintegrate

其他回答

从项目中删除CocoaPods是可能的,但目前还没有被CLI自动化。首先,如果你唯一的问题是不能使用xcworkspace,你可以使用CocoaPods和xcodeprojects,使用——no-integrate标志,它会生成Pods。Xcodeproj,而不是工作空间。然后可以将这个xcodeproj作为子项目添加到主xcodeproj中。

如果你真的想移除所有CocoaPods集成,你需要做几件事:

注意:如果不正确地编辑这些内容,可能会破坏你的主项目。我强烈建议您将项目纳入源代码控制,以防万一。此外,这些指令适用于CocoaPods 0.39.0版本,它们可能会随着新版本而改变。

删除独立文件(Podfile Podfile。锁和你的Pods目录) 删除生成的xcworkspace 打开xcodeproj文件,删除对Pods的引用。xcconfig和libPods。a(在框架组中) 在构建阶段下,删除“复制Pods资源”、“嵌入Pods框架”和“检查Pods清单”。锁阶段。 这似乎是显而易见的,但您需要以其他方式集成第三方库,或者从代码中删除对它们的引用。

在这些步骤之后,您应该使用集成CocoaPods之前存在的单个xcodeproj进行设置。如果我遗漏了什么,请告诉我,我会编辑这个。

此外,我们一直在寻找如何改进CocoaPods的建议,所以如果你有一个问题,请提交到我们的问题跟踪器,这样我们就可以想出一个方法来解决它们!

EDIT

正如Jack Wu在评论中所示,有一个第三方CocoaPods插件可以为你自动化这些步骤。可以在这里找到。注意,它是第三方插件,可能并不总是在CocoaPods更新时更新。还要注意,它是由CocoaPods核心团队成员制作的,所以这个问题不会成为问题。

使用这些终端的命令(不要忘记在新行开始使用sudo):

open:YourDir YouName$ sudo gem uninstall cocoapods
Password:?
Remove executables:
    pod, sandbox-pod

in addition to the gem? [Yn]  Y
Removing pod
Removing sandbox-pod
Successfully uninstalled cocoapods-1.4.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-core (1.4.0)
cocoapods-deintegrate (1.0.2)
cocoapods-downloader (1.1.3)
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.3.0)
cocoapods-try (1.1.0)

逐个卸载列表,如下所示:

open:YourDir YourName$ sudo gem uninstall cocoapods-core
Successfully uninstalled cocoapods-core-1.4.0
open:YourDir YourName$ sudo gem uninstall cocoapods-trunk
Successfully uninstalled cocoapods-trunk-1.3.0
open:YourDir YourName$ sudo gem uninstall cocoapods-try
Successfully uninstalled cocoapods-try-1.1.0
open:YourDir YourName$ gem list --local | grep cocoapods
open:YourDir YourName$ sudo gem uninstall cocoapods-stats
Successfully uninstalled cocoapods-stats-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-search
Successfully uninstalled cocoapods-search-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-downloader
Successfully uninstalled cocoapods-downloader-1.1.3
open:YourDir YourName$ sudo gem uninstall cocoapods-plugins
Successfully uninstalled cocoapods-plugins-1.0.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-deintegrate (1.0.2)
open:YourDir YourName$ sudo gem uninstall cocoapods-deintegrate
Successfully uninstalled cocoapods-deintegrate-1.0.2
open:YourDir YourName$ sudo gem uninstall cocoapods-stats
Successfully uninstalled cocoapods-stats-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-search
Successfully uninstalled cocoapods-search-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-downloader
Successfully uninstalled cocoapods-downloader-1.1.3
open:YourDir YourName$ sudo gem uninstall cocoapods-plugins
Successfully uninstalled cocoapods-plugins-1.0.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-deintegrate (1.0.2)
open:YourDir YourName$ sudo gem uninstall cocoapods-deintegrate
Successfully uninstalled cocoapods-deintegrate-1.0.2

你需要做的第一件事是删除Podfile, Podfile。锁、Pods文件夹和生成的工作区。 接下来,在.xcodeproj中,删除对Pods的引用。xcconfig文件和libPods。一个文件。 在Build Phases项目选项卡中,删除Check Pods清单。锁定部分(打开),复制Pods资源部分(底部)和嵌入Pod资源(底部)。 删除Pods.framework。

您唯一要做的就是包含您以前使用过的一些库。你可以通过简单地将pods文件夹中的任何文件夹拖到你的项目中(我更喜欢将它们放在我的Supporting Files文件夹中)来做到这一点。

这对我很管用。

要从项目中完全删除pod,你需要先安装两件事…这些是以下(假设你已经在你的系统中安装了可可荚)…

Cocoapods-Deintegrate插件 Cocoapods-Clean插件

安装

Cocoapods-Deintegrate插件 在您的终端上使用以下命令来安装它。 Sudo gem安装cocoapods-deintegrate Cocoapods-Clean插件 在您的终端上使用以下命令来安装它。 须藤宝石安装椰荚干净

使用

首先进入你的项目文件夹,使用as usual命令,如..

cd (path of the project) //Remove the braces after cd

现在使用这两个插件完全删除它如下..

Cocoapods-Deintegrate插件 在您的终端上使用以下命令首先从项目中分解pod。 豆荚去积分

Cocoapods-Clean插件 从项目中分解pod后,在终端上使用以下命令彻底清理它。 舱清洁 在完成上述任务后,您的项目目录中应该还保留着Podfile .只需手动删除它或在终端上使用以下命令。 rm Podfile

这是……现在你有你的项目从豆荚自由…清洁。

将Cocoapods从系统中移除。

以任何方式尝试在您的终端上使用以下命令从您的系统中卸载/删除可口可乐。

sudo gem uninstall cocoapods

它会自动去除可乐皮。

谢谢。 希望这对你有所帮助。

我觉得有更简单的方法。

根据公认的答案编辑,现在你可以使用第三方插件CocoaPods -deintegrate,它是可靠的,因为它是由CocoaPods核心团队成员制作的。

但是,仍然有一些文件遗留下来:

Podfile
Podfile.lock
Workspace

你可以手动将它们从你的项目中删除,但还有另一个工具可以帮助你清理它们,感谢cocoapodd -clean。

最后,卸载工作仍未完成,cocoapods-clean不清理Podfile,只需运行:

rm Podfile

干杯!

在删除之前,你应该确保你有一个备份的项目!