Git リモートリポジトリ
リモートリポジトリへ送信 概要を知ろう
GitHub
実務で一番使われる可能性が高い
GitHubのリポジトリ
-
Publicリポジトリ(無料プラン・有料プラン)
リポジトリがインターネットに公開される -
Privateリポジトリ(無料プラン・有料プラン)
リポジトリは本人と、許可した人のみ使用できる
Publicリポジトリ利用時の注意点
-
インターネットに公開されるため、公開する必要がない商用サービスのソースコードなど
公開してはいけないソースコードの管理に使うことはやめましょう -
個人情報、機密情報、認証情報など、重要な情報も載せないように注意
リモートリポジトリを作成しよう
GitHubにログインした状態から始める
新しくリポジトリを作成
Create a new repository または new ボタン
↓
リポジトリを作成する画面
オーナーは各自のGitHubのアカウント名が表示される
リポジトリネームには日本語は使わない
↓
Descriptionには任意でリポジトリの説明が書ける
↓
リポジトリのタイプを選択する
- Public
- Private
↓
Initialize this repository with:
この手順ではチェック入れない
↓
Add .gitignore
Choose a license
は今回はNoneにしておく
↓
Create repository
↓
リモートリポジトリの作成が完了!
開かれたページは後で使うのでそのままにしておく
GitHubにSSH keyを設定しよう
公開鍵認証
ユーザー認証で、パスワードを使う代わりに
- GitHub側に、公開鍵を配置
- ローカル環境側に、秘密鍵を配置
- 認証を行うことで、パスワード認証よりもセキュアな認証を行う
注意事項
秘密鍵はパスワードと同様に厳重に管理!
VSCのターミナル
↓
ssh-keygen -t rsa -b 4096 -C "GitHubで登録したメールアドレス"
↓
キーのファイル名を求められたらエンターキーをおす
こうするとデフォルトのファイル名となる
↓
次にパスフレーズを入力する
この鍵を使って認証を行うにはパスフレーズが必要になる
万が一、秘密鍵が悪意のある第三者に渡っても
パス付パスフレーズがわからないと認証を行えない!
入力しても何も表示されないがエンターキー
↓
再度同じパスフレーズを入力
↓
これで公開鍵と秘密鍵が作成された
↓
ファイルの確認
ls ~/.ssh/
↓
公開鍵
id_rsa
秘密鍵
id_rsa.pub
↓
公開鍵をGitHubに登録
↓
まず公開鍵をコピー
↓
cat ~/.ssh/id_rsa.pub
↓
公開鍵が表示される
↓
GitHubのユーザーのアイコンをクリック
Setteings
SSH and GPG keys
SSH keysのNew SSH key
タイトルに名前をつける(ユーザーがわかればOK)
↓
キータイプはAuthentication Key
↓
キーに公開鍵を貼り付ける
↓
Add SSH Keyをクリック
登録が完了
後で削除したい場合はデリートボタンを押す!
SSH keyは複数登録できるので開発環境ごとにキーを変えることもできる
↓
動作確認
ssh -T git@github.com
↓
本当に接続して良いか?
yes
↓
鍵を設定するときに作ったパスフレーズを入力
You've successfully authenticated
認証が成功されたと表示されればOK!
リモートリポジトリへプッシュしよう
ローカルリポジトリから、GitHubのリモートリポジトリにプッシュする一連の操作を実行できる
- ローカルリポジトリからGitHubのリモートリポジトリにプッシュ
- git pushコマンドを利用
VSCのターミナル
ローカルリポジトリのリモートリポジトリとしてGitHubで作成したリポジトリを登録するには
git remote addコマンドを使う
↓
GitHubのリモートリポジトリを開く
SSHが選択されていることを確認してコピーボタンを押す
↓
git remote add origin リモートリポジトリをコピペ
↓
リモートリポジトリの登録が完了!
↓
git branch
でmainブランチが選択されていることを確認
↓
ローカルリポジトリの内容をリモートリポジトリに送信
git push -u origin main
↓
SSHキーに設定したパスフレーズを入力
↓
GitHubのページへ移動しリロードすると内容が変わっている
リモートリポジトリへファイルがアップロードされていることが確認できた
リモートリポジトリへプッシュしよう2
- mainブランチ以外へのpushができる
ターミナル
ブランチを作成
git checkout -b ブランチ名
↓
git branch
ブランチが作成されているか確認
↓
このローカルリポジトリをリモートリポジトリへ同じ名前のブランチ名でプッシュするには
git push -u origin ブランチ名
↓
SSHキーのパスフレーズを入力
↓
プッシュができた
↓
GitHubのページで確認すると
ブランチの数が増えている
リモートリポジトリをクローンしよう
リモートリポジトリをクローンできる
- リモートリポジトリの内容を手元のローカル開発環境に持ってくる
- git clone コマンド
ターミナル
git clone リポジトリのURL
↓
GitHubのページからコピー
CodeのCloneでSSHがが選択されていることを確認
下のテキストをコピペ
↓
このまま実行してしまうとリポジトリを格納するディレクトリ名が一緒のままなので
URLの後にスペースを入れて _2 など違うディレクトリ名にする
↓
パスフレーズを入力
↓
確認
cd ディレクトリ名
ls
↓
クローンが行えたことが確認できる
リモートリポジトリからプルしよう
リモートリポジトリからプルを実行できる
- git pushした内容を、手元のローカルリポジトリに反映。
- git pullコマンド
例えば、他の開発者Bさんがgit pushした内容を
自分の手元のローカルリポジトリに反映するには
git pullコマンドを使う
流れ
他の開発者がgit pushしたと仮定した操作
git checkout -b other-developper
↓
新しくファイルを作成
touch other.js(ファイル名)
↓
ファイルを編集
console.log('other-developper');
↓
ファイルを保存してコミット
git add other.js(ファイル名)
↓
git commit -m "add other.js(ファイル名)”
mainブランチにマージを行う
mainブランチに移動
git checkout main
↓
other-developperブランチをmainブランチにマージ
git merge --no-ff other-developper
↓
コミットメッセージを編集する画面が表示される
デフォルトでOKなので保存して終了!
:wq
↓
グラフを確認
git log --graph
↓
リモートリポジトリにプッシュしていく
git push -u origin main
↓
パスフレーズを入力
プッシュが完了!
↓
GitHubのページでリポジトリのページをリロードすると
ファイルが追加されていることが確認できる!
↓
続いて、自分の手元のローカルリポジトリを想定した操作
mainブランチに切り替える
git checkout main
↓
コミットグラフを確認
git log --graph
↓
自身のローカルリポジトリにはother.jsファイルはなく、
リモートリポジトリから遅れてしまっている
↓
リモートリポジトリから最新情報をローカルリポジトリに
持ってくるコマンド
git fetch origin
パスフレーズを入力
↓
差分を確認
git diff origin/main
リモートリポジトリとの差分を確認することができる
↓
リモートリポジトリと同期して追いつくには
git pull
↓
パスフレーズ入力
↓
ls
other.jsファイルが追加されていることが確認できる
↓
リモートリポジトリとの差分を確認
git diff origin/main
差分がないので何も表示されない!
↓
コミットグラフも確認
git log --graph
↓
other.js作成の操作に関するログが表示される!
このように、リモートリポジトリであるGitHubを使うことで
複数の開発者でソースコードを共有しながら開発を行うことができる!
今日はGitHubも活用した!
やっぱりわからないこと出てきたときに聞ける人がいるのは心強いな
打ち間違い多いから気をつけよう😌
来週もパワーー
Discussion