LoginSignup
8
2

More than 5 years have passed since last update.

workspaceを作らずにSwiftLintをCocoaPodsで管理する

Last updated at Posted at 2018-02-13

リポジトリのswiftlintのバージョンを固定したい時に。

Carthageはバイナリの配布をサポートしていないのでCocoaPodsで管理する。
が、他のライブラリをCarthageで管理している場合、バイナリを利用するためだけにxcworkspaceを使うのは気持ちよくないのでオプションを探してみた。

CocoaPods/CocoaPods

ドキュメントにはxcworkspaceを作らないようにするオプションについての記述が見当たらなかったため、ソースコードを読むことにした。(見落としていただけかも)

どうやら、integrate_targetsfalseにすればcreate_workspaceが実行されないようだ。
試しに以下のPodfileで試したところ、Podsディレクトリのみが作成された。xcworkspaceの無い綺麗な世界の完成 :raised_hands:

Podfile
platform :ios, '11.0'

install! 'cocoapods', :integrate_targets => false
target 'App' do
  pod 'SwiftLint'
end

注意点

integrate_targetsfalseにすると、$PODS_ROOTなどの環境変数は使えなくなる。
そのため、$PODS_ROOT${SRC_ROOT}/Podsに置き換える必要がある。

8
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
2