今回の流れ
- Cloud9上でSSH認証用の公開鍵を作る
- 公開鍵をGitHubへ登録する
- GitHubにて個人アクセストークンを発行する
- 動作確認:GitHubからリポジトリをCloneする
- 動作確認:テスト用ファイルをGitHubへpushする
ステップ1
Cloud9を立ち上げる
ここは本題ではないのであっさり行きます。
まずは AWS に登録し、ログインします。
次に AWS Cloud9 の開発環境を作成し、ターミナルを起動します。
ターミナルが起動できたら、以下のコマンドを入力して、Git のバージョンを確認します。
git --version
AWS Cloud9 には あらかじめ Git がインストールされているので、コマンドを実行すると 以下のように表示されます。これで Git が使える状態になっています。
ステップ2
Cloud9とGitHubを連携させます。
-
Cloud9でsshキーを生成し、GitHubに登録
Cloud9とGitHubを連携させるには、Cloud9においてSSHキーを発行し、そのSSHキーをGitHubに登録する必要があります。
まずはCloud9上のターミナルで以下のコマンドを実行し.sshディレクトリに移動します。
cd ~/.ssh
次に以下のコマンドを実行してSSHキーを発行します。
いくつか入力する場面がありますが、そのままenterを押していってください。
ssh-keygen
SSHキーが発行できたらのコマンドを実行してSSHキーを表示させます。
cat id_rsa
cat id_rsa.pub
ls -a
隠しファイルを含むファイルを確認
うまくいかない時は上記のコードを実行して行末のファイル名と自分のファイル名があってるか確認してください
ステップ3
公開鍵をGitHubへ登録する
次にGitHub画面に行き、コピーしたSSHキーを登録していきます。
GitHub画面右上のアイコンボタンから「Settings」をクリックします。
その中の「SSH and GPG keys」を選択して、「New SSH keys」をクリックします。
Add new画面にて、各項目に従い以下のパラメータを記入します。
記入後、「Add SSH Key」ボタンをクリックします。
・Title:<任意のタイトルを記載して下さい>
・key:<コピーした公開鍵を貼り付けます>
ステップ4
GitHubにて個人アクセストークンを発行する
この 『個人アクセストークン』 もGitHubにて発行します。
以下の手順を実行して下さい。
-
GitHubを開きます。
GitHubのトップページにて、右上のプロフィールアイコンをクリックします。
プルダウンの中から「Settings」をクリックします。 ※ここまではSSHの時の手順と同じです -
Settings画面にて、左ペイン「Developer settings」⇒「Personal access tokens」とクリックします。
-
Personal access tokensにて、画面右上の「Generate new token」をクリックします。
-
New personal access token画面にて、各項目に従い以下のパラメータを記入します。
記入後、「Generate token」ボタンをクリックします。
・Note:<任意のタイトルを記載して下さい>
・Expiration:<トークンの有効期限を指定します。任意の日数を指定下さい>
・Select scopes:<トークンのロール(権限)を指定します ※とりあえず全ての項目にチェックを付けて下さい>
トークン作成後にパスフレーズが表示されます。
こちらのパスフレーズは必ずどこかに保管しておいてください。
※ このパスフレーズが実質的なパスワードになります
ステップ5
動作確認
GitHub上のリモートリポジトリをCloud9の作業ディレクトリへCloneします。
以下の手順を実行して下さい。
GitHubからリポジトリをCloneする
GitHubにて、push先のリポジトリのトップページを開きます。
画面右上の「Code」ボタンをクリックし、プルダウンにてClone URL(HTTPS)をコピーします。
Cloud9を開きます。
以下のコマンド操作を実行して下さい。
```
### 事前準備 ###
# 作業用ディレクトリを作成し、移動する
$ mkdir test_dir
$ cd test_dir
### git作業 ###
# gitの初期設定
$ git config --global user.name <GitHubに登録したユーザー名>
$ git config --global user.email <Githubに登録したメールアドレス>
# リモートリポジトリをCloneする
$ git clone <GitURL(HTTPS)>
# リポジトリがコピーできているか確認する
$ ls -ltr
・・・
<リポジトリ名>
・・・
```
ステップ6
テスト用ファイルをGitHubへpushする
テスト用ファイルを作成し、リモートリポジトリへのpushを行います。
以下のコマンド操作を実行して下さい。
# Cloneしたリポジトリへ移動
$ cd <リポジトリ名>
# origin設定
$ git push -u origin main
Username for 'Git URL(HTTPS)': <GitHubのユーザー名>
Password for 'Git URL(HTTPS)': <GitHubにて作成した個人アクセストークンのパスフレーズ>
# テストファイルの作成
$ echo 'Hello World' > <ファイル名>
# テストファイルをステージング環境へ追加する
$ git add <ファイル名>
# ステージング環境にあるテストファイルをリモートリポジトリへコミットする
$ git commit -m "<コミットメッセージ>"
# コミットしたテストファイルを、リモートリポジトリへpushする
$ git push origin main
以上で、動作確認手順は完了となります。
参考にさせていただいたサイト様
インフラエンジニアによる技術提供ブログ! chibinet
https://chibinfra-techblog.com/aws-cloud9-github-env-web-code/