前回、CodeCommit(Git)を使うための準備を行いました。
今回は実際にCodeCommitを利用してみたいと思います。
- ■流れ
- ■1.ローカルリポジトリを作成
- ■2.リモートリポジトリのデータを確認
- ■3.リモートリポジトリを登録&PULL
- ■4.ローカルリポジトリにファイルを作成しコミット
- ■5.ローカルリポジトリの情報をリモートリポジトリに反映
■流れ
1.ローカルリポジトリを作成
2.リモートリポジトリのデータを確認
3.リモートリポジトリを登録&PULL
4.ローカルリポジトリにファイルを作成しコミット
5.ローカルリポジトリの情報をリモートリポジトリにPUSH
■1.ローカルリポジトリを作成
CodeCommitに作成したリポジトリ(私の場合には、リポジトリ名:repo)は
「リモートリポジトリ」です。
ここで作成するのは、ローカルPC上に作成するリポジトリ(=「ローカルリポジトリ」)です。
1.ローカルPCで作業中のユーザのデスクトップ上に「localrepo」フォルダを新規作成します。
※localrepoフォルダをローカルリポジトリとして使用します。
尚、デスクトップ直下でなくても構いません。
2.「Git Bash」を起動します。
3.以下コマンドを実行します。
cd ./Desktop/localrepo pwd;ls -ltra
※現時点では何も存在しませんが、手順5との比較で使用します。
4.以下コマンドを実行します。
※カレントフォルダにリポジトリを作成するコマンドです。
git init
5.以下コマンドを実行します。
pwd;ls -ltra
手順3で実行した結果と比べると以下の通り、「.git」が増えています。
また、以下の通り、プロンプトのパス表示部分に「(master)」がついています。
「.git」フォルダが存在するフォルダは
"ローカルリポジトリであること"
を意味しております。
「.git」フォルダの中にフォルダ内の更新履歴が格納されます。
「(master)」表示の部分は、今時点ではGitを操作する上での「フォルダ名称」と思ってください。
6.ローカルPCのlocalrepoフォルダに緑色のチェックマークがついていることを確認します。
■2.リモートリポジトリのデータを確認
リモートリポジトリ(CodeCommitのrepo)を確認します。
現時点では、何も存在せず空です。
※空であることが確認できれば良いです。
■3.リモートリポジトリを登録&PULL
CodeCommitのリポジトリ(私の場合、repo)は
AWSコンソール上から作成し存在はしていますが、
ローカルリポジトリからはリモートリポジトリを認識していません。
そのため、ローカルリポジトリにリモートリポジトリを認識させます。
1.AWSコンソールのCodeCommitでリポジトリを選択し、「URLのクローン」>「HTTPSのクローン」をクリックします。
2.AWSコンソールの画面上部に「コピーされました。」と表示されていることを確認します。
3.「Git Bash」で以下コマンドを実行します。
※このコマンドで、ローカルリポジトリにリモートリポジトリを認識(登録)させます。
git remote add origin "コピーしたURL"
4.「Git Bash」で以下コマンドを実行します。
※リモートリポジトリの情報が表示されます。
git remove -v
5.「Git Bash」で以下コマンドを実行します。
※リモートリポジトリの情報をローカルリポジトリに同期します。
git pull origin master
■4.ローカルリポジトリにファイルを作成しコミット
リモートリポジトリにPUSHしたいデータを作成します。
ここでは、ローカルリポジトリに「localrepo-test.txt」というファイルを作成します。
1.以下コマンドを実行します。
touch localrepo-test.txt ls -ltra
2.以下コマンドを実行します。
現在のローカルリポジトリの状態を確認します。
git status
コマンド実行後、上記キャプチャのように出力されますが問題ありません。
3.以下コマンドを実行します。
localrepo-test.txt をステージングに移動します。(=コミット対象として認識させます。別の言い方をすると、トラッキング対象とします。)
※実行後は特に何もプロンプト上に表示されません。
git add localrepo-test.txt
ステージングという聞きなれない用語が出てきましたが、
要は、
リモートリポジトリにデータを送付する前に送付対象を格納しておく場所
のことです。
端的に言えば、
コミット対象として認識させる、もしくはトラッキング対象にする
って感じです。
尚、ステージングに"移動"と書いていますが、
実際のフォルダからファイルが移動しているわけではありません。
※混乱を招きそうなので、念のため補足させていただきました。
4.以下コマンドを実行します。
現在のローカルリポジトリの状態を確認します。
git status
手順2と表示が変わってることが確認できます。
5.以下コマンドを実行します。
ローカルリポジトリ内でコミットします。
git commit -m "FIRST COMMIT. localrepo-test.txt"
エラーが発生していなければ、上記キャプチャのようになります。
書かれている内容ですが、ざっくりいうと
localrepo-test.txt を新しくコミットしたよ!
って感じです。
6.以下コマンドを実行します。
現在のローカルリポジトリの状態を確認します。
git status
手順5でコミットが正常に実施されている為、
コミット対象が存在しないことが表示されています。
尚、ここまでの手順でローカルリポジトリ内のコミット作業は完了です。
色々コマンドを打ちましたが、git statusの遷移は以下の通りでした。
■5.ローカルリポジトリの情報をリモートリポジトリに反映
やっとですが、ローカルリポジトリのコミットデータを、
リモートリポジトリにPUSH致します。
1.以下コマンドを実行します。
ローカルリポジトリのコミットデータを、リモートリポジトリにPUSHします。
git push origin master
2.AWSコンソールからCodeCommitを開き、repoの内容を確認します。
無事、リモートリポジトリに登録されました。