iOS
rbenv
CocoaPods
Podfile
swift4

iOS開発環境を整えるチートシート

はじめに

ドキュメントを読みながらexampleを試したいなと思った時に環境構築どうしたらいいんだっけ・・?といつも迷うのでメモ
Cocoapodsをプロジェクトごとにバージョン管理しなきゃとか、根元の方にgemを入れてしまわないか不安な人向け

例 TextureGroup/Textureでやってみる

git cloneをしてさてworkspaceを開いて実行するぞと意気込むものpodfileに乗ってるライブラリを入れなきゃビルドできない
screenshot.png

環境構築方法

1このリポジトリをクローンする このファイルを入れたいディレクトリに移動してから下記コマンドを実行する

$ git clone git@github.com:TextureGroup/Texture.git

2.rbenvをインストール

複数バージョンを管理することができるrbenvを入れます。

$ brew install rbenv ruby-build

入ったことを確認したらrbenvのどのバージョンが入ったのか確認

rbenv --version

3.今回使うrubyの指定バージョンを入れる

$ rbenv install 2.3.1

一応入ってきたかチェックする(いまPC内で使えるrubyバージョン一覧が出てくる)

$ rbenv versions

こんな感じで出てきたらOK

system
* 2.3.1 (set by...........)

4.このリポジトリ内で利用するrubyのバージョンを設定する

/Texture/examples/Swiftの中に移動しておく

$ rbenv local 2.3.1

.ruby-versionというファイルができる

5.リハッシュする

$ rbenv rehash

6.gemのバージョン管理をおこなうbundlerをいれる (PCのグローバルにgemをいれるとバージョン管理ができなくなるためこのリポジトリ内にgemを入れるようにする)

gem install bundler

7.gemを管理するgemfileをつくる

$ bundle init

ここでコマンドを打った、ディレクトリにGemfileが作られる

8.Gemfileの中身を記入 Gemfileを開く

$ vi Gemfile

cocoapodsを管理するためGemfileに以下を書きこむ vimはiを一度押すと記入できるようになる。以下をかきこみ終わったら:wqを入れてエンターを押す (wは書き込みqは終了です)
Gemfileの中身

source "https://rubygems.org"

gem "cocoapods", "1.2.0"

9.gemfileを参照して、必要なgem(ここではcocoapods)を入れる

$ bundle install --path Vendor/Bundler

10.ios開発のためのライブラリ管理ツールpodの準備をする

まずはPodfileの作成(TextureのexampleではPodfileがすでに存在しているのでこれを使う)

$ vi Podfile

Podfileの中身

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'

use_frameworks!

target 'Sample' do
    pod 'Texture', :path => '../..'
end

11.Podfileに登録したライブラリをおとしてくる (bundlerでcocoapodを管理しているためpodのコマンドを使うときはbundle execを前につける必要がある)

$ bundle exec pod install

12.gitignore編集

$vi .gitignore
### Mac ###
.DS_Store

### CocoaPods ###
Pods/*

### Xcode ###
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.xcuserstate

### AppCode ###
.idea/

### App ###
*.mobileprovision
*.ipa
*.zip

### Carthage ###
Carthage/*

### Bundler ###
.bundle/*
bundle/*

### bundler ###
Vendor/Bundler

12.プロジェクトファイルを開く

$open Sample.xcworkspace

間違い、もっとこうした方がいいなどありましたら教えてください

参考

https://qiita.com/ikuwow/items/4fae81a099bf82f44749
https://github.com/github/gitignore