ソースコードをGithubと連携する方法
初心者の私がソースコードとGithubを連携させたときの方法を残しておきます。(mac対応)
とりあえずなんでもいいからGithubにリモートリポジトリを初めて置きたい方へ。
0.大前提
①Githubのアカウントは登録済みであること。
②すでに作成してある何かしらのソースコードのファイルがあること。
Githubと連携させることでリモートであるオンライン上にソースコードを保存させることができ、チーム間での開発を行うときや万が一PCが壊れてしまった場合にリモートからソースコードを取り出せます。
この準備段階と前知識を持って進めていきます。
1.Githubでレポジトリを作成する
Githubの自身のホームからRepositoriesへ飛び、緑色のNewから新規作成します。
- Repository name → アプリ名
- Description → アプリの説明等
- 公開か非公開か → 無料会員は公開のみ
- Initialize this repository with a README → チェック入れなくて大丈夫
- Add.gitignoreとAdd a licenseはとりあえずNoneで
このような感じで設定し、Create Repositoryを押すと作成が完了します。
2.SSHを設定する
自身のPCとGithubとのやり取りを行うために、ターミナル上でSSHキーを生成し、Githubの設定から公開鍵を登録する必要があります。
秘密鍵、公開鍵の生成について詳細は解説しませんが、どのような手順で行ったか残しておきます。
まず、鍵を生成するため、ターミナルにて
$ cd ~/.ssh
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/(username)/.ssh/id_rsa):
/Users/〇〇/.ssh/id_rsa already exists.
Overwrite (y/n)?
私の場合、以前鍵の生成を行ったことがあったので上書きしますか?と聞かれました。
問題なければyで。
次にこのように書かれているかと思います。
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/(username)/.ssh/id_rsa.
Your public key has been saved in /Users/(username)/.ssh/id_rsa.pub.
パスワードは設定する必要がなければ、エンターで飛ばして大丈夫です。
これで鍵が生成されました。
その後Githubに戻り、こちらから生成された鍵を設定していきます。
https://github.com/settings/ssh
緑色のNew SSH Keyボタンを押すと
TitleとKeyを埋める項目があるので
- Title→適当な名前。わかりやすく自身のPCのMacBookなど。私はtestと書きました。
- Key→ここに生成されたSSH(公開鍵)をペーストする。
※ターミナルで以下の方法からSSHキーをコピーできます。そのまま貼り付けすればOK。
$ pbcopy < ~/.ssh/id_rsa.pub
補足として
id_rsa.pubの部分はターミナルで
Your public key has been saved in /Users/(username)/.ssh/id_rsa.pub.
と言われたところの、最後尾の名前のことです。
これで、Add SSH Key を押下し、Githubに公開鍵を設定するのは完了です。
次に難しいところでもありますが、SSHのConfigファイルの中身を編集する必要があります。
.SSH 〇〇$ vi config
vi configでエンターを押すと、画面が切り替わるかと思います。
a を押下し、INSERTモードに入ってください。(編集ができる)
そして、以下を入力。
Host github github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa
User git
escape を押し :wq で内容を保存します。
ちなみに
id_rsa.pub. は公開鍵で
id_rsa が秘密鍵のことです。
この秘密鍵をConfig内に保存する作業をしました。
これで秘密鍵、公開鍵のやり取りは完了です。
設定されているかの確認作業としてターミナルで
$ ssh -T git@github.com
そして先ほどパスワードを設定した方はパスワードを入力して
Hi (Githubのユーザーネーム)! You've successfully authenticated, but GitHub does not provide shell access.
と出たら成功です。
3.早速、ソースコードをGithubへ(リモートへのpush)
ここからはターミナル操作のみです。
$ git config --global user.name "(Githubのユーザーネーム)"
$ git config --global user.email (Githubの登録アドレス)
コマンドラインでアプリのファイルまで移動します。
例として、デスクトップ上のファイルと連携させます。
一応、
$ ls
でファイルの中身を確認してください。
xcodeでのソースコードなら
.xcodeproj 拡張子のファイルがあることが確認できます。
ここまで出来たら
最後に、README.mdを追加し、コミット、プッシュします。
↓はgithubでレポジトリを作成直後に登録の仕方が載っているのをそのまま載せました。
その通りやってみてください。
$ echo "# (ファイル名)" >> README.md
$ git init
$ git add README.md
$ git commit -m "(コミットする際のメッセージ、何を追加したかなど)"
$ git remote add origin git@github.com:(Githubのユーザーネーム)/(ファイル名).git
$ git push -u origin master
そうすると
Branch 'master' set up to track remote branch 'master' from 'origin'.
と、リモートブランチであるmasterへの更新がされ、
Githubにてコミットメッセージと共に反映されていることがわかるかと思います。
以上です。
多少、Gitの知識はあるためコマンド一つ一つやっていることは把握しながらやりました。