XcodeからgitHubを使ってみよう(ローカルgitとgitHubの紐付け)
こんばんわ。takePonです。
本日はいよいよローカルgitからgitHubへpush(ローカルgitで言うコミット)する方法を書きたいと思います。
Xcodeを立ちあげて、gitにリポジトリを作成したプロジェクトを開きます。
Organizerウインドウを開き、Repositoriesタブを選択します。
対象リポジトリ中のRemotesを選択し、Add Remote ボタンを押下します
①Remote Nameには、gitHubのリポジトリの名称を入力します(任意の内容でOK)
②Locationには、gitHub上に作成したリポジトリのURI*1を入力します。
*1 https://github.com/アカウント名/リポジトリ名.git がURIとなっています。
(gitHubのアカウント上からの確認方法は、こちらを参照)
入力が終わったら、Create ボタンを押下します。
これでローカルgitに対して、gitHub(Remote Repository)の向き先が設定できました。
しかし未だ、ローカルgitとgitHubの紐付けは出来ていません。
ここからの紐付けは、ターミナルによって行います。
ターミナルを開いて、プロジェクトを保存しているディレクトリへ移動します。
cd xxxxx(プロジェクトの保存先) |
移動したら、ls -laコマンドを実行します。
( -aオプションは隠しファイルを含めて出力させるオプションです)
ls -la |
以下のように、プロジェクトファイルの他に.gitファイルが あることを確認して下さい。
. .. .DS_Store .git tstProject tstProject.xcodeproj |
(この.gitファイルに対して、以下のgitコマンドを発行していきます)
gitHubのURI(https://github.com/takePonTest/takePonTest.git)に対して、
ローカルgit(master)の内容をpushします。
cd git push https://github.com/takePonTest/takePonTest.git master |
以下の応答に対して、入力していきます。
Username for 'https://github.com': (gitHubのアカウント) Password for 'https://takePonTest@github.com':(gitHubのパスワード) |
以下の様な応答があれば、ローカルgitとgitHubの紐付けが完了しています
Counting objects: 19, done. Delta compression using up to 4 threads. Compressing objects: 100% (17/17), done. Writing objects: 100% (19/19), 6.20 KiB, done. Total 19 (delta 3), reused 0 (delta 0) To https://github.com/takePonTest/takePonTest.git * [new branch] master -> master |
gitHubへログインして、ローカルgitの内容がpushされているか確認してみましょう。
https://github.com/takePonTest/takePonTest
オメデトウございます♪
ローカルgitの内容がコミットされていることが確認できました。
本日の記事で、ローカルgitとgitHubの紐付けまで完了しました。
次の記事では、ファイルの変更、ローカルgitへのコミット、gitHubへのpush時の細かい注意点を纏めて記事にしたいと思います。
XcodeからgitHubを使ってみよう(ローカルとgitHubの鍵(SSH)の設定)
こんにちわ。takePonです。
前回の記事ではgitHubにアカウントを作成しました。
しかし現段階では、こちらで作成したローカルのgitからgitHubへアクセスが出来ない状態です。
なぜかと言いますと。
ローカルgitとgitHub間の情報連携ですが、平文でなくSSHによって暗号化した情報をもって、やりとりをしております。
現状では未だ、暗号通信の環境が出来ていないからです。
この記事ではローカルにSSH※を用いた暗号通信の環境を構築し、gitHubと暗号通信でをする手順を書きたいと思います。
※筆者の開発環境(OS:10.7.4(Lion) )には、標準でSSH(OpenSSL)がインストールされていますので、それを前提に進めていきます。
もしSSHがインストールされていない場合は、インストールする必要があります。
(インストールのやり方は、google先生が教えてくれると思います…)
まず、ターミナルを起動しましょう。
spotlight(controlボタン + スペース)を起動して、ターミナルと入力すれば楽チンです♪
①ターミナルより、以下のコマンドの入力し、鍵(秘密鍵と公開鍵)を作成します
ssh-keygen |
以下の応答がターミナルに表示されるかと思います。
Generating public/private rsa key pair. Enter file in which to save the key (/Users/ユーザ名/.ssh/id_rsa): ←作成された鍵のパス
|
②パスワードの設定を問われるので、設定します
(この鍵で暗号通信を行う際の、パスワードになります。)
Enter passphrase (empty for no passphrase): 【パスワードを入力】 Enter same passphrase again: 【パスワードを再入力】 |
以下の応答がターミナルに表示されるかと思います。
Your identification has been saved in /Users/ユーザ名/.ssh/id_rsa. Your public key has been saved in /Users/ユーザ名/.ssh/id_rsa.pub. The key fingerprint is: ------------------------------------- xx@xxxxxx The key's randomart image is: +--[ RSA 2048]----+ … +-----------------+ |
③実際に作成された鍵を確認します。
(サンプルの場合は /Users/ユーザ名/.sshに作成されてます)
cd /Users/ユーザ名/.ssh ←ディレクトリの移動 |
ls -l ←ファイル一覧の表示 |
以下の応答がターミナルに表示されるかと思います。
-rw------- 1 ユーザ名 xxxx xxxx xx x 16:47 id_rsa -rw-r--r-- 1 ユーザ名 xxxxx xxx xx x 16:47 id_rsa.pub |
④公開鍵の内容を確認
(catコマンドで公開鍵ファイルを開き、内容をコピーします)
cat id_rsa.pub |
以下の応答がターミナルに表示されるかと思います。
ssh-rsa xawerhrsfshsnsfyhrshfshsfhsgsdf cakhiudareuaniauhbaihdajhfjkashdufkbnaiuhsifhdasdjkfhaisudhfuahfjdsha vahojifadojfioasjdfioajdsfallaiosユーザ名@xxxxxxxxxxxxxxxxxxxxxxx |
この文字列の羅列(ssh-rsaから最後まで)が、公開鍵となります。
gitHub上に登録する為、上記の内容をコピーしておきます。
⑤公開鍵の内容をgitHubへ登録する
④で確認した公開鍵の内容をgitHubへ登録する為、gitHubへログインします。
右上の設定アイコンをクリックし、SSHの設定を行います。
SSH Keysを選択します
Add SSH keyを選択します
①SSH Keyのタイトルを入力します。(タイトルは自由に決めてOKです)
②ローカルで作成した、公開鍵の内容を貼り付けます。
①②を入力後 【Add Key】ボタンを押下します
gitHubのパスワードを入力後【Confirm Password】ボタンを押下します
SSH Keyが登録できている事を確認します。
⑥ターミナルからgitHubへSSHをでアクセスします。
ssh -T git@github.com |
以下の応答がターミナルに表示されるかと思います。
The authenticity of host 'github.com (207.97.227.239)' can't be established. RSA key fingerprint is xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Are you sure you want to continue connecting (yes/no)? |
yesを入力し、Enterで進みます。
おめでとうございます!!!
以下の応答があれば、無事gitHubへのSSH通信ができています♪
Hi gitHubユーザ名! You've successfully authenticated, but GitHub does not provide shell access. |
今回で、暗号化環境を整えましたので、
次回はいよいよローカルgitから、gitHubへのコミットを行います。
■参考サイト様
今回のSSHを用いた暗号化通信のしくみ、ローカルとgitHubへの設定は、
こちらの内容を大変参考にさせて頂いております。
素晴らしい記事を、ありがとうございましたm(_ _)m
XcodeからgitHubを使ってみよう(gitHubにアカウント作成)
こんにちわ。takePonです。
前回までの記事で、ローカルのgit環境は構築できましたので、
今回はgitHubへのアカウントの作成からローカルgitへの同期のやり方を記事にしていきます。
まず、下記のリンクよりgitHubへアクセスしてみて下さい。
https://github.com(英語のサイトです)
中央のボタン【Plans, Pricing and Signup】をクリックします。
無料サイズのアカウントを作成する為、【create free acount】を選択します。
作成する、アカウント情報を入力します
①ユーザ名、②メールアドレス、③パスワード、④パスワードの確認
を入力後、【create an account 】ボタンを押下します
おめでとうございます♪
無事、アカウントが作成できました♪♪
【New repository】ボタンを押下して、gitHub上にリポジトリを作成しましょう
①リポジトリの名前を決めます
②リポジトリの説明を書きます(任意入力)
(他の人が、あなたのリポジトリを見た際に表示される説明になります)
③リポジトリの公開範囲をPublicで設定します。(公開リポジトリは無料)
④READMEファイル※1、ignoreリスト※2の作成を設定できます
※1リポジトリの説明ファイルです。今回は自分でREADMEファイルを作成する為、チェックは入れません。
※2リポジトリに含めないファイルのリスト(iphoneアプリ作成の場合は、Objectice-Cが良いかと思います。 同様に今回は、自分でignoreリストを作る為、作成はしません。)
おめでとうございます♪
無事gitHub上にリポジトリが作成できました♪♪
赤枠で囲まれた場所に、作成されたリポジトリのアドレスが表示されます
(サンプルでは https://github.com/takePonTest/takePonTest.git)
以下は、ローカルのgitに対するコマンドになります
①ローカルのgitを作成し、ローカルのgitとgitHubを紐付けるコマンド
②ローカルのgitをgitHubへコミットするコマンド
今回は、gitHub上に自分のリポジトリが作成できました。
次回は、上記のコマンド達の説明
ローカルgitリポジトリとgitHubリポジトリの紐付けについて記事を書いていこうかと思います。
Xcodeからgithubを使ってみよう(ローカルgitへのコミット編)
こんばんわ。takePonです。
前回のブログ記事では、Xcodeの機能を使いローカルにgitリポジトリを作成しました。
今回は、Xcode上からファイルを変更→ローカルにgitリポジトリに変更をコミットするやり方を書いてみたいと思います。
※前回のブログ記事(1−2.作成されたプロジェクトを確認する)からの続きの手順となります。
1−3.ソースを変更する
試しに、ViewController.mに変更を加えてみましょう。 (ここでは//テストとコメントを追加)
バッジ【M】がViewController.mの横に表示され、gitリポジトリと差が発生した事が分かります。
バッジ | バッジの内容 |
---|---|
M | ローカルファイルに変更がある |
U | 上で変更あり |
A | ローカルで追加された |
D | ローカルで削除された |
1−4.変更したソースをgitへコミットする
ツールバーより【File】→【Source Control】→【Commit】を選択します
1−4.変更したソースをgitへコミットする
ウインドウ上に①ローカルのソース、②git上のソースが表示され、差分が色付けされています。
(①のローカルソース上の//testが、git上のソースには無い事が分かると思います)
③にはローカルとgit上の差分ソースが一覧となって表示されています。
(今回変更したViewController.mのみチェックが入っている状態でおkです)
④には、コミットに対するコメントを任意で入力します。
(サンプルでは test commit としています)
⑤内容に問題が無ければ、Commitボタンでコミットします
バッジ【M】がViewController.mの横から消え、gitリポジトリと差分が無くなった事が分かります。
1−5.コミットした内容、履歴を確認する
本当にコミット出来たか、コミットした内容および履歴などを確認してみましょう。
ツールバーより【Window】→【Organizer】すると、Organizerウインドウが立ち上がります。
Organizerウインドウから、以下のようにして履歴を表示します。
① Repositoriesタブ→tstProjectを選択
View Changesボタンより、先ほどcommitした内容の詳細を確認出来ます。
今回までで、ローカルにgitリポジトリを作成し、コミットするやり方を書いてきました。
次回は、githubへの登録方法を書いて行きたいと思います。
Xcodeからgitとgithubを使ってみよう(git編)
こんばんわ。takePonです。
開発をしていくにあたり、ソースコードの管理は必ず必要になるタスクかと思います。
自分は今までにcvs、svnと言ったバージョン管理ソフトは触っておりましたが、
開発環境(OS:10.7.4(Lion) Xcode: version4.3.2)では、元々gitというバージョン管理ソフトが導入されておりますので、いっちょうgitを使ったソースコードの管理をやってみました。
ついでに、ナウなヤングにばかうけのgithubでのソース公開にもチャレンジしてみようかと…。
スキル的に不安ですが、やり方をメモ代わりに残していきます(^_^;)
※gitってなんぞ?gitとsvn(cvs)ってどこが違うの? githubってなんぞ?という方は、一度google先生にお問い合わせ下さいm(_ _)m(その内書けたら纏めます・・・)
では、以下の流れの通りに解説していきます。
1.Xcodeからgitを使ってファイルの管理を出来る様にする
2.githubにリポジトリを作成する
3.1を、2で作成したリポジトリに登録して公開する
1.Xcodeからgitを使ってファイルの管理を出来る様にする
1−1.新規プロジェクト作成から実行する
・1−1−1.プロジェクトを新規作成する
・1−1−2.テンプレートを選択(とりあえず、なんでも良いです)
・1−1−3.プロジェクト名を入力(とりあえず、なんでも良いです)
・1−1−4.create local git repository ・・・にチェックを入れる
(これにより、localのgitリポジトリが作成されます)
1−2.作成されたプロジェクトを確認する
(赤丸のバッチが付いていたら、localのgitリポジトリは作成は成功です!!)
■バッチとは・・・
ローカルのファイル(ディレクトリ)が、リポジトリと比べてどのような状態かを、知らせるアイコンのようなものです。
バッジ | バッジの内容 |
---|---|
M | ローカルファイルに変更がある |
U | リポジトリ上で変更あり |
A | ローカルで追加された |
D | ローカルで削除された |
上記は代表的なバッチと、内容です。
さて次回は、Xcode上でのgitへのcommit、githubの登録について書きます。
Xcodeで作られたプロジェクトの中身を確認してみよう
フレッシュマンのみなさん、こんばんわ。
ノンフレッシュマンのtakePonです。むしろ干からび気味です。
前回ではプロジェクトを作成しましたが、今回は中身を覗いていっちゃいましょう!
プロジェクトを作成した段階で、以下のファイル(クラス)が自動生成されています。
■(接頭語)AppDelegate.h
■(接頭語)AppDelegate.m
■ MainStoryboard.storyboard
■(接頭語)ViewController.h
■(接頭語)ViewController.m
それぞれのクラスのざっくりとした説明です。
「AppDelegate」…アプリケーションの状態遷移を制御する。起動時 の初期化や、バックグラウンドとフォアグラウンドの状態遷移に伴う制御を行う。
「MainStoryboard」…画面、画面間の移動をGUIベースに作成する。
「ViewController」…アプリケーションのコンテンツの画面表示を管理する。特定のビューだけでなく、そのサブビューのコレクションも管理する。
なるほど。わからん。
実は上記クラスは、それぞれフレームワークが提供してくれているクラスみたいなのです。
「え?フレームワークなんて入れた覚えはないんだけど…?」とお思いの方。
えぇ自分も違和感がありました。
ズバリXcode(開発環境)には元々フレームワークが入っているようで、そのフレームワークは「Cocoa」というそうです。
さらにさらに言うなれば、MacでのプログラミングはこのCocoaフレームワークが使われるのが常だとか。
…ふむ。
windowsアプリにおける、.netフレームワーク + Visual Studioみたいなモンなんですかね。。。
ともあれ、フレームワークが一枚噛んでいて、
なおかつMacでの開発言語は「Objective-C」という今まで使ったことの無い言語。
オラ、ガクブルしてきたぞ((((;゚Д゚))))
とりあえず、全てはとても理解できないと思いますので、
必要なところだけなんとか抑えて、iphoneアプリを作っていこうかと思います。
次回は、簡単にObjective-CおよびCocoaフレームワークをさらりと触れられたらなと思います。
いやー、大変な事になりそうです(^_^;)
CocoaフレームワークとObjective-Cの関連につきましては、下記のサイト様を参考にさせて頂きました。
(Objective-C Dev Guide様)
http://objc.web.fc2.com/cocoa-0.html