プロジェクトからCocoaPodsを削除する正しい方法は何ですか?CocoaPod全体を削除したい。クライアントの制限により、使用できません。xcworkspaceではなく、xcodeprojが1つだけ必要です。
pod deintegrate
プロジェクトからCocoaPodsを削除する正しい方法は何ですか?CocoaPod全体を削除したい。クライアントの制限により、使用できません。xcworkspaceではなく、xcodeprojが1つだけ必要です。
pod deintegrate
回答:
CocoaPodsをプロジェクトから削除することは可能ですが、現在のところCLIでは自動化されていません。まず、使用できる唯一の問題がを使用できない場合は、ワークスペースではなくを生成するフラグを使用して、s xcworkspace
だけでCocoaPodsを使用できます。次に、これをサブプロジェクトとしてメインに追加できます。xcodeproj
--no-integrate
Pods.xcodeproj
xcodeproj
xcodeproj
CocoaPods統合をすべて削除したい場合は、いくつかのことを行う必要があります。
注これらを正しく編集しないと、メインプロジェクトが壊れる可能性があります。念のため、プロジェクトをソース管理にチェックインすることを強くお勧めします。また、これらの手順はCocoaPodsバージョン用であり0.39.0
、新しいバージョンで変更される可能性があります。
Podfile
Podfile.lock
およびPods
ディレクトリ)を削除するxcworkspace
xcodeproj
ファイルを開き、Pods.xcconfig
およびlibPods.a
(Frameworks
グループ内の)への参照を削除しますBuild Phases
削除します。Copy Pods Resources
Embed Pods Frameworks
Check Pods Manifest.lock
これらの手順の後、xcodeproj
CocoaPodsを統合する前に存在していたシングルを設定する必要があります。見逃した場合はお知らせください。編集します。
また、我々は常にあなたが問題を持っている場合は、私たちにそれを提出してくださいようCocoaPodsを改善する方法についての提案を探している問題追跡、我々はそれらを修正する方法を考え出すことができるように!
編集
示すコメントでジャック・ウーでそれがあなたのためにこれらの手順を自動化することができますプラグインサードパーティのCocoaPodsがあります。それは見つけることができるここに。これはサードパーティのプラグインであり、CocoaPodsの更新時に常に更新されるとは限りません。また、問題が問題にならないように、CocoaPodsコアチームメンバーによって作成されていることにも注意してください。
pod deintegrate
とpod clean
は、プロジェクト/リポジトリからCocoaPodを削除するための2つの指定されたコマンドです。
コマンドの完全なセットは次のとおりです。
$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod cache clean --all
$ rm Podfile
元のソリューションはここにあります:https : //medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5
CocoaPodのドキュメントpod deintegrate
:https : //guides.cocoapods.org/terminal/commands.html#pod_deintegrate
プロジェクトからポッドを完全に削除するには、最初に2つのものをインストールする必要があります...これらは次のとおりです(システムにすでにcocoa-podsがインストールされていると仮定します)...
取り付け
Cocoapods-Deintegrateプラグイン
端末で次のコマンドを使用してインストールします。
sudo gem install cocoapods-deintegrate
Cocoapods-Cleanプラグイン
端末で次のコマンドを使用してインストールします。
sudo gem install cocoapods-clean
使用法
まず、いつものようにコマンドを使用してプロジェクトフォルダに移動します。
cd (path of the project) //Remove the braces after cd
次のように、これら2つのプラグインを使用して完全に削除します。
Cocoapods-Deintegrateプラグイン
ターミナルで次のコマンドを使用して、最初にポッドをプロジェクトから分解します。
pod deintegrate
Cocoapods-Cleanプラグイン
プロジェクトからポッドを分解した後、ターミナルで次のコマンドを使用して完全にクリーンアップします。
pod clean
上記のタスクを完了した後も、Podfileがプロジェクトディレクトリに残っているはずです。手動で削除するか、ターミナルで次のコマンドを使用してください。
rm Podfile
それだけです...これで、ポッドからプロジェクトが解放されました...クリーンアップされました。
システムからCocoapodsを削除します。
何らかの方法で、端末で次のコマンドを使用して、システムからcoca-podをアンインストール/削除してみてください。
sudo gem uninstall cocoapods
コカポッドが自動的に削除されます。
ありがとう。これがお役に立てば幸いです。
もっと簡単な方法があると思います。
承認された回答で編集されているように、サードパーティのプラグインcocoapods-deintegrateを使用できるようになりました。これは、CocoaPodsコアチームメンバーによって作成されているため、信頼できます。
しかし、まだいくつかのファイルが残っています:
Podfile
Podfile.lock
Workspace
プロジェクトから手動で削除することもできますが、cocoapods-cleanのおかげで、それらをクリーンアップするのに役立つ別のツールもあります。
最後に、アンインストール作業はまだ完了してcocoapods-clean
いません。クリーンアップせず、次のコマンドをPodfile
実行してください:
rm Podfile
乾杯!
削除する前に、プロジェクトのバックアップがあることを確認してください!
pod deintegrate
このコマンドの後、プロジェクトにCocoapodの痕跡は残りません。
ただし、ポッドプロジェクトを参照するワークスペースはまだ残っています。以下の3つのファイルを手動で削除する必要があります。
xx.xcworkspace
Podifle
Podfile.lock
その後、プロジェクトを再び使用できます。
楽しんで!
CocoaPodバージョン= 1.2.0のテスト
キースの答えは素晴らしいです。「use_frameworks!」を使用している場合、Cocoapods 0.36がDynamic Frameworksをサポートし始めているので、私はそれを指摘したいだけです。「Podfile」でCocoapodを削除する場合は、次のようにする必要があります。
Build Phases
削除Embed Pods Frameworks
相。Pods
内部で処理している他のファイルがある場合は、Build Phases
それらも削除します。
開発者が直面する可能性のある側面は2つあります。
最初のケースでは、「pod deintegrate」を使用して、上記の回答で述べられているいくつかの手順に従う必要があります。
2番目のケースでは、インストールされている特定のフレームワークをアンインストールする場合、ポッドファイルで使用できる非常にシンプルな方法で、アンインストールするフレームワークにコメントを付けて、ポッドインストールコマンドを実行します。
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
target 'ProjectName' do
# Uncomment this line if you're using Swift or would like to use dynamic frameworks
# use_frameworks!
pod 'iCarousel', '~> 1.8'
# pod 'Facebook-iOS-SDK', '~> 4.1'
# pod 'ParseFacebookUtilsV4', '~> 1.11'
# pod 'Parse', '~> 1.14'
end
ここでは、iCarouselではなく、facebookと解析フレームワーク(ポッドを使用してインストールされたもの)をアンインストールしたいので、上記のようにポッドファイルを更新しました。
これでポッドインストールを実行すると、プロジェクト内のiCarouselが保持され、Facebookが削除されて解析されます。
Podfile
、Podfile.lock
、Pods
フォルダ、および生成されたワークスペースを。.xcodeproj
への参照とPods.xcconfig
ファイルを削除しlibPods.a
ます。Pods.framework
ます。あなたがしたい唯一のことは、以前に使用していたライブラリのいくつかを含めることです。これを行うには、ポッドフォルダー内のフォルダーをプロジェクトにドラッグします(サポートファイルフォルダーに配置することをお勧めします)。
それは私のために働いた。
うまくいかない場合は、
1。プロジェクトをクリーンアップしてください。
2.削除された派生データ。
派生データを削除する方法がわからない場合は、ここに移動してください
関連するすべてのポッドファイルを削除します。
そしてプロジェクトナビゲーターで:
プロジェクト名(青いアイコン)をクリックします->ターゲット(*)->ビルドフェーズ->「[CP] Check Pods manifests.lock」を削除します(「x」をクリックします)
(*)プロジェクト名をクリックします。サイドバーを最初に表示するには、[プロジェクトとターゲットリストを表示]をクリックする必要がある場合があります。
ivで行った処理を非常に簡単に記述します(プロジェクトからCocoaPodsを削除するため)。
xcodeからフレームワーク参照を削除するには:
podfile
から名前を削除.plist
1つのポッドのみを削除し、インストールした可能性のある他のポッドを残したい場合は、アプリディレクトリでpodfileを開き、削除するポッドを削除します。次に、ターミナルを使用してアプリディレクトリに移動し、次のように入力します。
pod update
これにより、削除したポッドがpodfileから削除されます。ターミナルで削除されたことがわかります:
Analyzing dependencies
Removing FirebaseUI
Removing UICircularProgressRing
このメソッドは、ポッドファイル内の他のポッドへの更新もプルすることに注意してください。あなたはそれを望まないかもしれません。
pod install
ポッドの追加/削除に使用する必要があります。これは特に、ここで言ったように更新を回避するためです。あなたは、この非常にトピックに関するより多くの彼らの「ガイド」で読むことができます... guides.cocoapods.org/using/pod-install-vs-update.html
次のターミナルのコマンドを使用します(新しい行の先頭で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)
次のようにリストを1つずつアンインストールします。
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
もう分解する必要はないと思います。ターミナルで次のコマンドを使用してそれを行うことができました:
ポッドインストール
ポッドファイルに存在しないものは自動的に削除されました