14

いくつかのプロジェクトで CocoaPods を使用しました。依存関係/オープン ソース フレームワークを最新の状態に保つのはクールで簡単です。

しかし、CocoaPods の内部の仕組みについては疑問があります。

Podfile では、Pod の名前のみを指定しています。場合によってはバージョンも指定します。

pod "AFNetworking" , "1.3.2"

次に、AFNetworking リポジトリを正しく検出して複製します。これはどのように仕事ですか?ruby gem が実際のリポジトリが Github にあることをどのように認識しているか。Pod は Github でのみ動作しますか? (Github で利用可能なフレームワークのみのポッドを見たため)。Github 以外 (Bitbuket など) の依存関係にポッドを使用できる場合、そのポッドを Podfile に追加するにはどうすればよいですか?

4

2 に答える 2

13

CocoaPods は、あなたが話していることすべてを機能させるために、舞台裏で多くのことを行います。比較的高いレベルでは、実際の「ポッド」は Github hereにあるリポジトリで管理されます。これは、サード パーティのライブラリ ベンダーが CocoaPods で動作するように「Pod」を送信する場所です。コマンド ライン ツールを使用して Pod を検索pod search AFNetworkingすると、検索語句に一致する使用可能なすべての Pod が表示されます。

CocoaPods 仕様でいっぱいのリポジトリが Github にあるとしても、Github と他のサイトの比較に関する限り、CocoaPods 自体は単純な古い Git を使用して、指定されたリポジトリからソースを取得します。このため、任意のサイトでホストされている任意の git リポジトリから仕様を作成できます。また、svn、mercurial、および単純な古い http(s) もサポートしています。スペックが全体的にどのように機能するかに興味がある場合は、ローカル マシンからスペック リポジトリを開いたり、コマンド ラインから~/.cocoapods/repos/master直接編集したりできるスペック リポジトリを参照してください。pod spec edit AFNetworking

于 2013-09-20T15:01:10.420 に答える