web-dev-qa-db-ja.com

プロジェクトからCocoaPodsを削除する方法?

プロジェクトからCocoaPodを削除する正しい方法は何ですか? CocoaPod全体を削除したいのですが。私のクライアントによって課されたいくつかの制限のために、私はそれを使うことができません。 xcworkspaceの代わりにxcodeprojを1つだけ持つ必要があります。

423
Andres

プロジェクトからCocoaPodを削除することは可能ですが、現在CLIによって自動化されていません。まず最初に、あなたが持っている唯一の問題がxcworkspaceを使うことができないのであれば、--no-integrateを生成するがワークスペースは生成しない Pods.xcodeproj フラグを使うことでxcodeprojsだけでCocoaPodsを使用できます。その後、このxcodeprojをメインのxcodeprojのサブプロジェクトとして追加できます。

あなたが本当にすべてのCocoaPods統合を削除したいのなら、あなたはいくつかのことをする必要があります:

_ note _ これらのことのいくつかを誤って編集すると、メインプロジェクトが壊れる可能性があります。念のため、プロジェクトをソース管理にチェックインすることを強くお勧めします。また、これらの指示はCocoaPodsバージョン0.39.0のためのものです、それらは新しいバージョンで変わるかもしれません。

  1. スタンドアロンファイルを削除します(PodfilePodfile.lockおよびあなたのPodsディレクトリ)
  2. 生成されたxcworkspaceを削除します
  3. xcodeprojファイルを開き、Pods.xcconfigおよびlibPods.aへの参照を削除します(Frameworksグループ内)
  4. Build Phasesの下にあるCopy Pods ResourcesEmbed Pods Frameworks、およびCheck Pods Manifest.lockフェーズを削除します。
  5. これは明らかに思えるかもしれませんが、他の方法でサードパーティのライブラリを統合するか、コードからそれらへの参照を削除する必要があります。

これらのステップの後、あなたはCocoaPodを統合する前に存在していた単一のxcodeprojで設定されるべきです。私が何かを逃したならば、私に知らせてください、そして、私はこれを編集します。

また、CocoaPodを改善する方法についての提案を常に探しているので、問題がある場合はそれらを私たちの issue trackerに提出してください それらを修正する方法を考え出すことができます。

_編集_

表示 のJack Wuによるコメントには、これらのステップを自動化できるサードパーティのCocoaPodsプラグインがあります。 ここ で見つけることができます。これはサードパーティ製のプラグインであり、CocoaPodsがアップデートされたときにアップデートされるとは限りません。問題が問題にならないように、それはCocoaPodsコアチームメンバーによって作られていることにも注意してください。

987
Keith Smiley

pod deintegratepod cleanは、プロジェクト/リポジトリからCocoaPodを削除するための2つの指定コマンドです。

これが完全なコマンドセットです。

$ Sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod clean
$ rm Podfile

元のソリューションはここで見つかりました: https://medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5

pod deintegrateに関するCocoaPodドキュメント: https://guides.cocoapods.org/terminal/commands.html#pod_deintegrate

304
DevGansta

プロジェクトからポッドを完全に削除するには、まず2つのことをインストールする必要があります。それらは次のとおりです(すでにシステムにココアポッドがインストールされていると仮定します)。

  1. Cocoapods-Deintegrateプラグイン
  2. Cocoapods-Cleanプラグイン

インストール

  1. Cocoapods-Deintegrateプラグイン

    それをインストールするためにあなたの端末上で次のコマンドを使用してください。

    Sudo gem install cocoapods-deintegrate
    
  2. Cocoapods-Cleanプラグイン

    それをインストールするためにあなたの端末上で次のコマンドを使用してください。

    Sudo gem install cocoapods-clean
    

使用方法

まずはじめに、いつものように..を使用してプロジェクトフォルダに移動します。

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

次のようにそれを完全に削除するために今これらの2つのプラグインを使用してください..

  1. Cocoapods-Deintegrateプラグイン

    最初にあなたのプロジェクトからポッドを分解するためにあなたの端末上でこの次のコマンドを使用してください。

     pod deintegrate
    

Deintegrating Pods

  1. Cocoapods-Cleanプラグイン

    あなたのプロジェクトからのポッドの分解後、それを完全にきれいにするためにあなたの端末上で次のコマンドを使用してください。

     pod clean
    

    上記のタスクを完了した後、Podfileはまだプロジェクトディレクトリに残っているはずです。それを手動で削除するか、または端末で次のコマンドを使用してください。

     rm Podfile
    

それはそれだ...今、あなたはポッドからあなたのプロジェクトを解放している...掃除済み。

システムからCocoapodを削除しています。

いずれにせよ、あなたのシステム上でcoca-podをアンインストール/削除するためにあなたの端末上で次のコマンドを使用しようとしてください。

Sudo gem uninstall cocoapods

それはコカ・ポッドを自動的に取り除きます。

ありがとう。これが役に立ったことを願っています。

50
onCompletion

もっと簡単な方法があると思います。

受け入れられた答えによって編集されるように、今あなたはサードパーティプラグインを使うことができます cocoapods-deintegrate 、それはCocoaPodsコアチームメンバーによって作られているのでそれは信頼できます。

しかし、まだいくつかのファイルが残っています。

Podfile
Podfile.lock
Workspace

あなたはそれらをあなたのプロジェクトから手動で削除することができますが、それらをきれいにするのを助けるための別のツールもあります、ありがとう cocoapods-clean

最後に、アンインストール作業はまだ完了していません、cocoapods-cleanPodfileをきれいにしないで、ただ実行してください:

rm Podfile

乾杯!

削除する前に、あなたは自分のプロジェクトのバックアップがあることを確認するべきです!

48
Allen

pod deintegrate

このコマンドを実行しても、プロジェクトにCocoapodの痕跡は残りません。

しかし、Podsプロジェクトを参照しているワークスペースはまだ残っているので、3つ以下のファイルを手動で削除する必要があります。

xx.xcworkspace
Podifle
Podfile.lock

それからあなたはあなたのプロジェクトを再び使うことができます。

楽しむ!

テストCocoaPodバージョン= 1.2.0

42
mistdon

私はこれらすべての答えを試してみましたが、それでもまだうまくいかないでしょう、結局私は試してみました:

pod deintegrate
pod install

これは実際にうまくいった!

少なくとも私の場合は、ビルドフェーズからすべてのpodスクリプトを削除して追加し直す必要があるようです。

18
David Rees

Keithの答えは素晴らしいです - 'use_frameworks!'を使っているなら、 Cocoapods 0.36Dynamic Frameworksをサポートし始めているからです。あなたの 'Podfile'で、あなたがCocoapodを削除したいのなら、あなたはこれをしなければなりません:

  • Build Phases削除Embed Pods Frameworksフェーズ。
12
Chao Ruan

開発者が直面する可能性がある2つの側面があります。

  • プロジェクトからポッドを完全に削除したい
  • 開発者はポッドからのプロジェクトから特定のフレームワークをアンインストールしたいです。

最初のケースでは、 'pod deintegrate'を使用し、上記の回答に記載されているいくつかの手順に従う必要があります。

2番目のケースでは、あなたがpodファイルで利用可能な非常に簡単な方法がそこにインストールされている特定のフレームワークをアンインストールしたいならば、ちょうどあなたがアンインストールしたいpod installコマンドを実行します。

# 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

ここで私はFacebookやParsフレームワーク(Podを使ってインストールされた)をアンインストールしたいのですが、iCarouselではありません。だからこそ私は上記のようにPodファイルを更新しました。

今私がpod installを実行すれば、それは私のプロジェクトの中にあるようにiCarouselを保ち、facebookを削除してパースします。

6
Shital Zope
  1. あなたがする必要がある最初の事はPodfilePodfile.lockPodsフォルダ、そして生成されたワークスペースを削除することです。
  2. 次に、.xcodeprojで、Pods.xcconfigファイルとlibPods.aファイルへの参照を削除します。
  3. Build Phasesプロジェクトタブ内で、Check Pods Manifest.lockセクション(open)、Copy Pods Resourcesセクション(下部)、Embed Pod Resources(下部)を削除します。
  4. Pods.frameworkを削除してください。

あなたがしたいと思う唯一のことはあなたが以前に使用していたライブラリのいくつかを含むことです。これを行うには、Podsフォルダー内の任意のフォルダーをプロジェクトにドラッグするだけです(私はそれらを私のSupporting Filesフォルダーに入れることを好みます)。

それは私のために働きました。

4
A.G

うまくいかない場合は、試してみてください
1。プロジェクトをきれいにする。
2。派生データを削除しました。

派生データを削除する方法がわからない場合は、ここに進んでください。

Xcode6で「派生データを削除する」には?

3
Ego Slayer
  1. .plistからpodfileという名前を削除します
  2. ポッドを再度取り付けます (ポッド取り付けにはこのリンクを使用してください)
1
Bibin Joseph

1つのPodを削除して、インストールした可能性のある他のPodを残したい場合は、アプリケーションディレクトリのPodファイルを開き、削除したいPodファイルを削除します。それからterminalを使ってあなたのアプリディレクトリに移動して入力してください:

pod update

これにより、削除したポッドがポッドファイルから削除されます。端末から削除されているのがわかります。

Analyzing dependencies
Removing FirebaseUI
Removing UICircularProgressRing

このメソッドはあなたのポッドファイルの他のポッドへの更新も引き出す​​ことに注意してください。あなたはそれを望んでいるかもしれないし望んでいないかもしれません。

1
TM Lynch

私は(私のプロジェクトからCocoaPodを削除するために)ivをとても簡単に書いたつもりです。

  1. 追加されたフォルダを削除します(frameworks、Podsなど)。
  2. 追加したファイルをすべて削除します(PROJECT.xcworkspace、PodFile、PodFile.lock、Pods-PROJECT.debug.xcconfig、Pods-PROJECT.release.xcconfigなど)。
  3. 元のもの(PROJECT、PROJECT_Tests、PROJECT.xcodeproj)をそのままにしてください。
  4. xcodeのプロジェクトからフレームワーク参照を削除する

Xcodeからフレームワーク参照を削除するには

  1. プロジェクトナビゲータを使用する
  2. プロジェクトを選択
  3. 対象プロジェクトを選択
  4. 上部のオプションから「フェーズの構築」を選択します
  5. デフォルトグループ(ターゲットの依存関係、ソースのコンパイル、ライブラリとのバイナリのリンク、バンドルリソースのコピー)をそのままにし、その他のグループを削除します。
1
SoliQuiD

私はCocoaPodsアプリ(バージョン1.5.2)を使ってプロジェクト内の私のポッドを削除することができました。その後、フォルダ内のpodfile、podfile.lock、xcworkspaceファイルのみを削除しました。

0
Berkant

enter image description here

画像表現の詳細

0
vilas deshmukh

これらのターミナルのコマンドを使ってください(新しい行の始めに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
0
CrownFord

関連するポッドファイルをすべて削除します。

xx.xcworkspace Podifle Podfile.lock

and Goto Targets - >ビルドフェーズ - >ここで[cp] check pod manifests.lockを削除します。

0
Mailavan C