コンユウメモ

技術メモを忘れるのでBlogでメモ

XcodeでGitのリモートリポジトリでソース管理する(Carthage対応)

はじめに

OSSライブラリを利用するのにCarthageを使ったXcodeのプロジェクトを作成した場合にCarthageのライブラリ設定をまるごとリモートリポジトリで管理して 他のメンバーもGit cloneしたら利用できるようしたい。

ゴール

先日作ったiOSのシングルページアプリケーションのXcodeプロジェクトを使って以下ことをする

  • Bitbucketを使ってXcodeのプロジェクトをリモートリポジトリで管理する
  • リモートリポジトリからcloneして、シミュレータで起動を確認する
  • Carthageを利用したライブラリがチーム開発できるようにうまく利用できていること

動作環境

Bitbacketにプライベートリポジトリを作る

この辺は簡易に書いていくと

※ git:// のプロトコルだとBitbacketにsshのパブリックキーを登録しておく必要があるっぽい

既存のXcodeにリモートリポジトリを紐づける

Xcodeを起動し、先日作ったプロジェクトを選択する。 メニューバーSource Controlを選択、「プロジェクト名 master」を選択、そして「Configure プロジェクト名」を選択するとダイアログが表示される

「Remotes」のタブを選択し、プラスボタンを押すとメニューが出るので、「Add Remote」を選択する

Name:Origin(デフォルトのまま)
Adress: https://account_name@bitbucket.org/xxxx/xxxxx.git(メモしておいたBitbacketのgitのアドレス)

「Add Remote」ボタンを押して、「Done」ボタンを押して設定完了

メニューバーSource Controlを選択肢、Pushを選択、 Push先をoriginにするとBitbacketのパスワードが求められるので入力するとBitbacketにPushされる(アカウント名は非活性で固定されている)

Bitbacketの対象のリポジトリのページへ、ソースのメニューを開き、ソースコードが追加されているのを確認する

リモートリポジトリからクローンする

コンソールから適当なディレクトリに移動し、リモートリポジトリをクローンする

git clone https://account_name@bitbucket.org/xxxx/xxxxx.git
Password for 'https://account_name@bitbucket.org': Bitbacketパスワードを入力する

Xcodeプロジェクトを開いて確認する

クローンしたディレクトリをFinderで開いて、xcodeのプロジェクトファイルを開いてみる コンパイルするとCarthageで指定したライブラリファイルが無いとエラーが出るのがわかる。

Carthageのライブラリを取得する

> carthage bootstrap --platform iOS

carthage update だと最新版のライブラリのバージョンを取得しCarthage.resolvedを参照しない ライブラリを追加しない時はcarthage bootstrap を実行するべきだ

Carthageディレクトリが作成され、ライブラリが作成されたことを確認できる

再びXcodeを起動しコンパイルするとエラーが解消されいるのがわかる