昨年iPhoneのテザリングが解禁されてから頻繁にMacBook Airを持ち歩くようになり、外出先などでもiOSアプリを開発する機会が増えてきました。
これまでは、Xcodeのプロジェクトファイルをメインの開発環境(MacBook Pro)やモバイル用開発環境(MacBook Air)からDropboxを経由して共有していましたが、この機会にきっちりとバージョン管理をしようということで、以前より導入を検討していた「Git」を活用して下図の構成でプロジェクトを管理することにしました。
ネットワーク越しのバージョン管理は、サーバー側とクライアント側にGitがインストールされている必要があります。
幸い弊社でお客様Webサイトをホスティングしているレンタルサーバ「heteml」では初めからGitがインストールされていますので、ここにリモートリポジトリを作成して複数の開発環境からバージョン管理ができるようにします。
ローカルリポジトリはMacBook Pro(とAir)に作成します。
Xcode自体でもGitが使えるようになっていますが、後ほどターミナルからgitコマンドを実行する必要があるので、あらかじめHomebrewなどでインストールしておきます。
$ brew install git |
1. hetemlに空のリモートリポジトリを作成する
はじめにsshでhetemlに接続し、空のリモートリポジトリ(ベアリポジトリ)を作成します。
※hetemlでsshを利用する方法はこちら
ここでは、ホームディレクトリにiOSアプリのプロジェクトを管理するためのgit/iosapp/というディレクトリを作成しています。その中に「test_project.git」ディレクトリを作成してリポジトリにします。
$ mkdir iosapp $ cd iosapp $ mkdir test_project.git $ cd test_project.git $ git init --bare --shared |
※後ほどレポジトリのパスを使用しますので、コマンドの結果に表示されたパスをコピーしておきます。
/home/sites/heteml/usersxxx/x/x/x/xxxx/git/iosapp/test_project.git
これでリモート側の準備はOKです。
2. Xcodeプロジェクトをローカルリポジトリに設定する
Xcodeで新規プロジェクトを作成します。この時、「Create local git repository for this project」にチェックを入れます。
※Gitで管理していない既存プロジェクトの場合は、ターミナルでプロジェクトのディレクトリに移動しgit initコマンドでローカルリポジトリを設定します。
3. プロジェクトをリモートリポジトリにpushする
ターミナルでプロジェクトのディレクトリに移動しremote-originを設定します。
$ cd TestApp $ git remote add origin ssh : // ユーザ名@sshxxx.heteml.jp:2222 /home/sites/heteml/usersxxx/x/x/x/xxxx/git/iosapp/test_project .git |
さらにプロジェクトの内容をpushします。
$ git push origin master |
パスワードを聞かれるのでssh用のパスワードを入力するとリモートリポジトリにプロジェクトがpushされます。
4. Organizerで確認
XcodeのOrganizerでリモートリポジトリが追加されたことを確認できます。
以上でレンタルサーバとGitを使ったXcodeプロジェクトの開発環境が整いましたので、複数のMacからアプリ開発ができるようになりました。
5. 別のMacからプロジェクトを管理するには?
別のMacからプロジェクトを管理する場合は、heteml上のリモートリポジトリをPullしてローカルリポジトリを作成します。
XcodeのOrganizerの画面左下にある「+」ボタンをクリックし「Checkout or Clone Repository…」を選択します。
Locationに上記3のコマンドと同じURL「ssh://ユーザ名@sshxxx.heteml.jp:2222/home/sites/heteml/usersxxx/x/x/x/xxxx/git/iosapp/test_project.git」を入力して保存場所を設定するとプロジェクトがPullされます。
以降はターミナルからGitコマンドでバージョン管理します。
例えばリモートリポジトリから変更をPullする場合は以下のコマンドです。
$ git pull origin master |
おすすめのGit本
初めてバージョン管理を学ぶ際は「アリスとボブのGit入門レッスン」がおすすめです。
Gitの概念や基本的な使い方について会話形式で学ぶことができます。