未分類

[時効] cocoapodsのバージョンバラバラ事件

投稿日:

どうも現場のなかたです

いろんなiOSプロジェクトをやってると
cocoapodsのバージョン違いでPodfile.lock周りでエラーが出て、モヤっとすることないですか?
私だけすか?
その事件がついに時効を迎えました。

みなさんのiOS開発するとき自慢のMacに

sudo gem install cocoapods

こんな感じで意気揚々とcocoapodsを入れたかと思います。
しかし時が経って、こんなことやると…

$ gem list | grep cocoapods
cocoapods (1.7.0, 1.6.1, 1.5.3)

色んなバージョン入ってーらー、、、こんなことないですか?

ちゃんと各プロジェクト、バージョン固定しようぜ運動をはじめました

見てわかる通り、cocoapodsさんはgemなので、bundler管理しちゃいましょう

やりかた

1.bundlerのインストール

gemをまとめてポンのbundlerをmacにインストールしましょう

sudo gem install bundler

2.bundler初期化

cocoapodsを使っているディレクトリに移動して

bundle init

そったら、Gemfileができます

3.Gemfile編集

$ vi Gemfile

# frozen_string_literal: true

source "https://rubygems.org"

# git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } # <== コメントしちゃおう

# gem "rails"
gem 'cocoapods', '1.7.0' # <== 追加

4.見えない化

$ vi .gitignore

/vendor
.bundle

5.cocoapodsインストール

bundle install --path vendor/bundle

これでプロジェクト指定のcocoapodが入ります

6.podインストール

bundle exec pod install

プロジェクトに関するライブラリが入ります


ディレクトリ構成

こんな感じになりますた

- Gemfile
- Gemfile.lock
- iOSProject
- iOSProject.xcodeproj
- iOSProject.xcworkspace
- Podfile
- Podfile.lock
- Pods  <-- ここにライブラリ入るネ
- vendor  <-- ここにcocoapods入るネ

補足

globalな環境にcocoapods入れてもいいかなと思いましたが、
環境を汚したくない派の人間なんで、プロジェクト内に納めた方が綺麗だなと。

今日はこんな感じで。

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

AWSの英語切り替えボタンが左下にあるのを知らなかった。

こんにちは、コーテッグのこやまです。 今まで、AWSが日本語で表示されているとわ …

no image

IPAの応用情報を受験してみます。

こんにちは、コーテッグの小山です。 私は情報系の学部を出ていないので、基礎力向上 …

9月9日 エンたまもくもく会を開催しました!

9月9日の土曜日に、湯島オフィスでの最後のエンタマもくもく会を開催しました! も …

no image

激おこぷんぷん丸のフレンズたち

ネットゲームでチャットしてると知らない単語がちらほら出てきます。 「まぢルンルン …

【2019年版】オフィスまでの経路のご案内(from 小川町&新御茶ノ水)

こんにちは。たなかです。 旧オフィスの場所は紹介記事があるのに、現オフィス(20 …