開発メモ

開発関係のメモをいろいろと。たぶん。

XcodeからgitとGitHubを使う方法・応用編

Xcodeで開発を行うときにgitやGitHubとあわせて使う方法の応用編です。

XcodeからgitとGitHubを使う方法・基本編 - 開発メモ
http://seeku.hateblo.jp/entry/2016/03/01/232409

今回の内容はこんな感じ。応用編のつもりでいたのですが、よく考えると基本編で基本的な操作の説明が抜けていたので、その部分もまとめてあったりしますorz

  • 最後にコミットした状態に戻す
  • 古いソースコードを参照する
  • 複数のバージョンを並行して開発する
  • 後からgitを使えるようにする
  • コミットと同時にGitHubにプッシュ
  • GitHub上の変更を取りこむ
  • GitHubでREADMEを追加
  • GitHubでLICENSEを追加

動作を確認した環境

環境 情報
Xcode 7.2.1 (7C1002)
iOS 9.2
Swift 2.1.1
Date 2016/3/2

gitに関する操作編

最後にコミットした状態に戻す

ソースコードにいろいろ手を入れたけどどうしても気に入らないとき、gitを使っていれば、最後にコミットした状態まですぐに戻す事が出来ます。

f:id:see_ku:20160302231401p:plain

メニューの [Source Control] - [Discard All Changes] を選択すると確認画面が出るので、よく確認して実行するだけです。簡単ですね。

古いソースコードを参照する

リポジトリに登録された古いソースコードと、現在のソースコードを見比べながら作業する事も出来ます。

f:id:see_ku:20160302231420p:plain

Xcodeの右上にある矢印が左右を向いてるっぽいアイコンを押すと、画面が分割されて古いバージョンを表示できるようになります。ちなみに、メニューから操作する場合は [View] - [Version Editor] - [Show Version Editor] で表示できます。

f:id:see_ku:20160302231446p:plain

Version Editorの下の部分をクリックする事で、過去の、どのソースコードを表示するか選ぶ事が出来ます。いざというときに助かります。

複数のバージョンを並行して開発する

例えば『Ver 1.0をリリースしたのでVer 2.0に取りかかりたいけど、Ver 1.0のバグ取りもしたい』みたいなときに、gitを使ってると簡単に平行して作業する事が出来ます。

ブランチとは?

ブランチというのは、平行して作業する時に作業をまとめて管理する単位です。ブランチを分ける事で、同じリポジトリでもそれぞれの作業を独立して行う事が出来ます。・・・言葉で説明するとわかりにくいですね。実際に使ってみれば、すぐに慣れると思います。

それぞれのバージョンに対応するブランチを作成

Xcodeでは、メニューの [Source Control] - [プロジェクト名 - 現在のブランチ名] - [New Branch] で新しいブランチを作る事が出来ます。

f:id:see_ku:20160302231507p:plain

特に切り替え作業を行ってない場合、masterブランチで作業が管理されます。複数のバージョンを並行して開発する場合、masterで最新の開発を行い、それ以外のバージョンは対応するブランチで作業するやり方が多い・・・ のかな? この辺りは、個人の好みが大きいような気がします。

ブランチを切り替える

開発を進めるバージョンを切り替える場合、対応するブランチを切り替える事になります。

Xcodeでは、メニューの [Source Control] - [プロジェクト名 - 現在のブランチ名] - [Switch Branch] でブランチを切り替える事が出来ます。

ブランチを切り替える際に、こんなエラーが出る事があります。

f:id:see_ku:20160302231556p:plain

ローカルのブランチから、リモートのブランチに切り替えようとするとこのエラーが出るようですが・・・ 詳細は不明です。とりあえず、ローカルのブランチだけ使っていれば問題ないと思われます。

後からgitを使えるようにする

Xcodeのプロジェクトを作成する時点で、gitのリポジトリも作っておくのがおすすめなのですが、もし、万が一、運悪くリポジトリの作成を忘れていた場合でも、後から簡単に対応する事が出来ます。

メニューの [Source Control] - [Create Working Copy] を押すと確認画面が出るので、リポジトリを作成しましょう。

GitHubに関する操作編

コミットと同時にGitHubにプッシュ

毎回毎回、コミットしてからプッシュする作業を繰り返してるような人は、コミット画面の左下にある『Push to remote』をチェックしておくと、幸せになれるかもしれません。

f:id:see_ku:20160302231623p:plain

GitHub上の変更を取りこむ

複数人で開発していると、自分のXcodeで作業しているソースコードより、GitHubリポジトリにあるソースコードの方が新しい状況になる事があります。

このような場合、メニューの [Source Control] - [Pull] で、GitHubリポジトリを取りこむ事が出来ます。

GitHubでREADMEを追加

READMEが登録されていないリポジトリを開くと、画面の右下の方に『Add a README』ボタンがあります。

f:id:see_ku:20160302231649p:plain

これを押すとREADMEの編集画面になるので、その場で編集&コミットする事が出来ます。便利ですね。

GitHubでLICENSEを追加

READMEの追加に比べると、LICENSEの追加はちょっと面倒です。

f:id:see_ku:20160302231704p:plain

GitHubリポジトリのページを開いて、ボタンの並んでるところにある『New file』をクリック。

f:id:see_ku:20160302231718p:plain

あとは、画像の通りに操作して、ライセンスを選択&コミットするだけです。ファイル名に『LICENSE』を入力するのがポイント?