pod install
を使用してポッドを更新しようとしていますが、正しく更新されないことがわかりました元のポッドを削除しない限り。
追加の手順が必要ですか、それとも更新が失敗する一般的な間違いがありますか?
どのバージョンのものかはわかりませんが、ココアポッドのインストールを最新バージョンに更新すると、これに役立つ2つの新しいコマンドが見つかります。
pod outdated
これにより、更新が利用可能なすべてのポッドがリストされます。
pod update
これにより、前のコマンドにリストされたポッドが更新されます
詳細タグを追加して、更新中にエラーが表示されるかどうかを確認できます。
pod install --verbose
--verbose
を使用することが、何が起こっているのかを知る最良の方法です。更新元のリポジトリに問題がある可能性があります。言いにくい。
この質問の読者は、
ポッドのインストールとポッドの更新
CocoaPodsで始まる多くの人々は、PodのインストールはCocoaPodsを使用してプロジェクトを最初にセットアップしたときにのみ使用され、その後Podの更新が使用されると考えているようです。しかし、そうではありません。
pod install
を使用して、プロジェクトに新しいポッドをインストールします。既にPodfileがあり、以前にpod install
を実行した場合でも、そのため、既にCocoaPodsを使用しているプロジェクトにポッドを追加/削除する場合でも。pod update [PODNAME]
は、特定のポッドを新しいバージョンに更新する場合にのみ使用します。pod update
は、すべてのポッドを新しい利用可能なバージョンに更新する場合にのみ使用します。pod install
コマンドが実行されるたびに(および新しいポッドをダウンロードしてインストールするたびに)、ポッドごとにインストールしたバージョンをPodfile.lock
ファイルに書き込みます。このファイルは、各ポッドのインストール済みバージョンを追跡し、それらのバージョンをロックします。 pod install
を実行すると、Podfile.lock
にまだリストされていないポッドの依存関係のみが解決されます。 Podfile.lock
にリストされているポッドの場合、新しいバージョンが使用可能かどうかを確認せずにPodfile.lock
にリストされている明示的なバージョンをダウンロードします。Podfile.lock
にまだリストされていないポッドの場合、Podfile pod 'MyPod', '~>1.2'
で)
プロジェクトが 正しく構成されている の場合、Pods
ディレクトリ全体を削除してpod install
を実行できるはずです。ポッドが正しくインストールされないという問題がある場合、これが最善のソリューションであることがあります。
注:ビルド時に次のようなエラーが発生し始める場合:
diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
... Xcodeでプロジェクトを閉じて再度開く が必要になる場合があります。
警告:Podsディレクトリを削除する前に、Podsディレクトリ内のすべてのファイルが再作成されることを確認してください。 (つまり、手動でファイルをPodsディレクトリに変更または追加していないことを確認してください。)