2014/01/30

CocoaPodsがちょっとだけ便利になるtips

CocoaPodsを使うときに、知っておくとちょっとだけ便利になるコマンドラインオプションなんかをtipsとしてまとめてみました。

対象パッケージのデモプロジェクトをインストールする

pod try <パッケージ名>

CocoaPods 0.29.0からの新機能です。試したいパッケージで次のようにします。 取得して、Xcodeまで開いてくれるので、人によっては大きなお世話かも。

利用例

$ pod try Colours
Updating spec repositories

Trying Colours
Opening '/tmp/CocoaPods/Try/Colours/ColoursDemo/ColoursDemo.xcodeproj'

パッケージ検索でiosのみを検索する

pod search --ios <検索文字列>

あまり、OS Xのみのパッケージはありませんが、例えば、次のようにすることでプラットフォームiOSのみに限定できます。その反対は--osxです。

利用例

$ pod search --ios Underscore

-> Underscore.m (0.2.1)
   A functional toolbelt for Objective-C.
   pod 'Underscore.m', '~> 0.2.1'
   - Homepage: https://github.com/robb/Underscore.m
   - Source:   https://github.com/robb/Underscore.m.git
   - Versions: 0.2.1, 0.2.0, 0.1.0, 0.0.1.pre.1 [master repo]

パッケージ検索でサマリなども記述も検索対象にする

pod search --full <検索文字列>

通常の検索対象はパッケージ名だけみたいですが、--fullを付けることで他の文字列も検索対象になります。また、このとき、正規表現が利用可能になります。

利用例

$ pod search --full 'map.+array'

-> ConcurrentCollectionOperations (0.1.0)
   Concurrent map and filter on NSArray, NSDictionary, NSSet using GCD.
   pod 'ConcurrentCollectionOperations', '~> 0.1.0'
   - Homepage: https://github.com/kastiglione/ConcurrentCollectionOperations
   - Source:   https://github.com/kastiglione/ConcurrentCollectionOperations.git
   - Versions: 0.1.0, 0.0.3, 0.0.2 [master repo]

検索結果のパッケージの統計情報を表示する

pod search --stats <検索文字列>

検索してパッケージがたくさん出たときに、今もメンテされているか、有名なのか(WatchersやForks)、などで判断しやすくなったりします。

利用例

$ pod search --stats ReactiveCocoaLayout
-> ReactiveCocoaLayout (0.4)
   Reactive layout framework built on top of ReactiveCocoa.
   pod 'ReactiveCocoaLayout', '~> 0.4'
   - Homepage: https://github.com/ReactiveCocoa/ReactiveCocoaLayout
   - Source:   https://github.com/ReactiveCocoa/ReactiveCocoaLayout.git
   - Versions: 0.4, 0.3.2, 0.3.1, 0.3 [master repo]
   - Pushed:   less than a week ago
   - Author:   ReactiveCocoa
   - License:  MIT
   - Platform: iOS 6.0 - OS X 10.7
   - Watchers: 270
   - Forks:    10

検索結果をブラウザ開く

pod search --web <検索文字列>

こちらも0.29.0からの新機能です。

古いパッケージを見つける

pod outdated

pod outdatedを使います。そのまま、すべてのパッケージをアップデートするなら、pod updateします。

利用例

$ pod outdated
[in /Users/safx/src/MioDashboard]
The following updates are available:
- AFNetworking 1.3.3 -> 2.1.0
- ReactiveCocoa 2.0 -> 2.2.3
- ReactiveCocoa/Core 2.0 -> 2.2.3
- ReactiveCocoa/no-arc 2.0 -> 2.2.3
- ReactiveCocoa/RACExtensions 2.0 -> 2.2.3
- TWMessageBarManager 1.3.0 -> 1.3.1
- VTAcknowledgementsViewController 0.4 -> 0.7

リポジトリにないものをインストールする

CocoaPodsのリポジトリには登録されていないが、GitHubには上がっている野良パッケージをインストールするには、Podfileに次のように記述します。

pod 'てきとうなプロジェクト名', :podspec => "podspecへのURL"
また、ローカルにあるプロジェクトに対しては次のように指定します。
pod 'てきとうなプロジェクト名', :path => "podspecへのpath"

利用例 (Podfile)

pod 'LHOAuth2LoginViewController', :podspec => "https://raw.github.com/lari/LHOAuth2LoginViewController/master/LHOAuth2LoginViewController.podspec"
pod 'ReactiveCocoa', :path => "~/src/ReactiveCocoa/ReactiveCocoa.podspec"

詳細は「iOS - Cocoapodsをより使いこなすためのTips - Qiita」を参照ください。

導入したpodの警告を抑制する

# 全podの警告を抑制
inhibit_all_warnings!
# 特定podの警告を抑制
pod 'プロジェクト名', :inhibit_warnings => true

Xcodeプラグインを使う

利用していないので詳細は不明ですが、CocoaPodsを利用するXcodeプラグインもあります。

関連リンク

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。