自由気ままに書いちゃおう

好きなことをつらつらと・・・

AWS CodeCommitの始め方2(Gitの使い方)

前回、CodeCommit(Git)を使うための準備を行いました。

 

www.guri2o1667.work

 
今回は実際にCodeCommitを利用してみたいと思います。

 

■流れ


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」が増えています。

f:id:guri2o1667:20200517090714p:plain

また、以下の通り、プロンプトのパス表示部分に「(master)」がついています。

f:id:guri2o1667:20200517090958p:plain

「.git」フォルダが存在するフォルダは
"ローカルリポジトリであること"
を意味しております。


「.git」フォルダの中にフォルダ内の更新履歴が格納されます。
「(master)」表示の部分は、今時点ではGitを操作する上での「フォルダ名称」と思ってください。

6.ローカルPCのlocalrepoフォルダに緑色のチェックマークがついていることを確認します。

f:id:guri2o1667:20200517092254p:plain


■2.リモートリポジトリのデータを確認

リモートリポジトリ(CodeCommitのrepo)を確認します。
現時点では、何も存在せず空です。
※空であることが確認できれば良いです。

f:id:guri2o1667:20200517093551p:plain

 

■3.リモートリポジトリを登録&PULL

CodeCommitのリポジトリ(私の場合、repo)は
AWSコンソール上から作成し存在はしていますが、
ローカルリポジトリからはリモートリポジトリを認識していません。
そのため、ローカルリポジトリにリモートリポジトリを認識させます。

1.AWSコンソールのCodeCommitでリポジトリを選択し、「URLのクローン」>「HTTPSのクローン」をクリックします。

f:id:guri2o1667:20200517103629p:plain


2.AWSコンソールの画面上部に「コピーされました。」と表示されていることを確認します。

f:id:guri2o1667:20200517103803p:plain


3.「Git Bash」で以下コマンドを実行します。
※このコマンドで、ローカルリポジトリにリモートリポジトリを認識(登録)させます。

git remote add origin "コピーしたURL"

 

4.「Git Bash」で以下コマンドを実行します。
※リモートリポジトリの情報が表示されます。

git remove -v

f:id:guri2o1667:20200517104121p:plain


5.「Git Bash」で以下コマンドを実行します。

※リモートリポジトリの情報をローカルリポジトリに同期します。

git pull origin master

f:id:guri2o1667:20200517105840p:plain

 

■4.ローカルリポジトリにファイルを作成しコミット

リモートリポジトリにPUSHしたいデータを作成します。
ここでは、ローカルリポジトリに「localrepo-test.txt」というファイルを作成します。

1.以下コマンドを実行します。

touch localrepo-test.txt
ls -ltra

2.以下コマンドを実行します。
現在のローカルリポジトリの状態を確認します。

git status

f:id:guri2o1667:20200517094222p:plain


コマンド実行後、上記キャプチャのように出力されますが問題ありません。

3.以下コマンドを実行します。
localrepo-test.txt をステージングに移動します。(=コミット対象として認識させます。別の言い方をすると、トラッキング対象とします。)
※実行後は特に何もプロンプト上に表示されません。

git add localrepo-test.txt


ステージングという聞きなれない用語が出てきましたが、
要は、
リモートリポジトリにデータを送付する前に送付対象を格納しておく場所
のことです。
端的に言えば、
コミット対象として認識させる、もしくはトラッキング対象にする
って感じです。
尚、ステージングに"移動"と書いていますが、
実際のフォルダからファイルが移動しているわけではありません。
※混乱を招きそうなので、念のため補足させていただきました。

4.以下コマンドを実行します。

現在のローカルリポジトリの状態を確認します。

git status


手順2と表示が変わってることが確認できます。

f:id:guri2o1667:20200517095459p:plain


5.以下コマンドを実行します。
ローカルリポジトリ内でコミットします。

git commit -m "FIRST COMMIT. localrepo-test.txt" 

f:id:guri2o1667:20200517095751p:plain


エラーが発生していなければ、上記キャプチャのようになります。
書かれている内容ですが、ざっくりいうと
localrepo-test.txt を新しくコミットしたよ!
って感じです。

6.以下コマンドを実行します。
現在のローカルリポジトリの状態を確認します。

git status 

f:id:guri2o1667:20200517095958p:plain

手順5でコミットが正常に実施されている為、
コミット対象が存在しないことが表示されています。

尚、ここまでの手順でローカルリポジトリ内のコミット作業は完了です。
色々コマンドを打ちましたが、git statusの遷移は以下の通りでした。

f:id:guri2o1667:20200517100430p:plain

 

■5.ローカルリポジトリの情報をリモートリポジトリに反映

やっとですが、ローカルリポジトリのコミットデータを、
リモートリポジトリにPUSH致します。


1.以下コマンドを実行します。

ローカルリポジトリのコミットデータを、リモートリポジトリにPUSHします。

git push origin master

2.AWSコンソールからCodeCommitを開き、repoの内容を確認します。

f:id:guri2o1667:20200517110841p:plain

無事、リモートリポジトリに登録されました。