CocoaPodsに対応した自前のライブラリをローカルで使う(リリース時に固定)

CocoaPodsに対応した自前のライブラリをローカルで使う(リリース時に固定)1/16更新

考えてみたら、開発中の別プロジェクトが所属するworkspaceからガリガリ更新できるわけではないので、branch:tag::commitを指定して利用するだけで良いのかも。

以下、オリジナル

CocoaPodsで自前のライブラリを作って、それを利用するフローです。ライブラリを作ってローカルで実行しようとした所、

pod 'MZRSlideInMenu', :path => '/path/to/CocoaPods/MZRSlideInMenu'

は成功するものの、

pod 'MZRSlideInMenu', '0.0.1', :path => '/path/to/CocoaPods/MZRSlideInMenu'

は失敗してしまいました。バーション指定ができない?他の方法も試したところ、

pod 'MZRSlideInMenu', :git => 'https://github.com/morizotter/MZRSlideInMenu.git', :tag => '0.0.1'

は成功することがわかりました。そこで、自前のライブラリを利用するフローを考えてみました。

CocoaPodsで自前のライブラリを作成する部分は、「iOS – 自前のライブラリをCocoaPodsで管理するメモ – Qiita [キータ]」や、「ミニマルなメニューライブラリMZRSlideInMenuをGithub&CocoaPodsで公開しました – Morizotter Blog」を参考にしてください。

開発期(自前ライブラリにも手を入れて育てていきたい)

pod 'MZRSlideInMenu', :path => '/path/to/CocoaPods/MZRSlideInMenu'

で、ライブラリもどんどんいじる。

開発期(自前ライブラリには手を入れないと決めている)

pod 'MZRSlideInMenu', :git => 'https://github.com/morizotter/MZRSlideInMenu.git', :tag => '0.0.1'

:tagなどを指定して固定されたものを利用する。

リリース時

利用しているgitのタグを指定して、

pod 'MZRSlideInMenu', :git => 'https://github.com/morizotter/MZRSlideInMenu.git', :tag => '0.0.2'

などとして固定する。固定する意味は、今後自前ライブラリも育っていってメソッドなどが変わってしまうこともあることを考慮した結果。

というのはどうでしょう?

gitに関しては:branchや、:commitというのも利用できるようなので、そこは用途に合わせて変えてゆけば良いと思います。リリース次の固定化もCocoaPodsにpull requestして既に公開されているものなら、公開されているもので固定したほうが気持ちよさはありますね。

スニペット

pod '__NAME__', :path => '~/Dropbox/MOLABO/Apps/CocoaPods/__NAME__'
# pod '__NAME__', :git => 'https://github.com/morizotter/__NAME__.git', :tag => ''

後で忘れないようにこんなスニペット作ってみました。スニペット管理はDashでやってます。

:gitの部分はbitbucketでも行けるかな。今度ためそう。

参考にさせていただきました

Pocket
LINEで送る

You may also like...