はじめに
ローカルで作成したプロジェクトファイルを、初めてリモートリポジトリに反映させる時に、リモートリポジトリへの反映までの流れを理解するのに苦戦しましたので備忘録として残しておきます。なるべくイメージで覚えられるように書いて見ました。
前提条件
- gitインストール済み
- プロジェクト作成済み
- gitlabで以下の作業が完了済みであること
- 初期登録
- プロジェクト作成
- ブランチ作成
手順0 プロジェクトを作成した時の状態
gitを何もいじらずにプロジェクトを作成した時のローカルリポジトリ、リモートリポジトリはどちらもプロジェクトの内容が反映されていない空っぽの状態です。
手順1 プロジェクトをステージに追加
以下のコマンドをターミナルで実行し、プロジェクトの内容をステージに追加する。
git add .
このコマンドを実行することでプロジェクトの内容全てがステージに追加される。
今回は初めてローカルリポジトリにプロジェクトの内容を反映させるため、上記のコマンドでプロジェクトの内容全てをステージに追加している。
特定のファイルのみをステージに追加するためには以下のコマンドを使用する。
git add [ファイル名]
手順2 ステージの内容をローカルリポジトリに反映させる
手順1によりプロジェクトの内容を全てステージに追加したが、まだローカルリポジトリには反映されていない状態である。
そこで以下のコマンドを実行し、ステージに追加されたプロジェクト内容をローカルリポジトリに追加する。
git commit -m "メッセージ"
-mオプションを使用することで、コミットにメッセージを追加することができる。
手順1、手順2によりプロジェクトの内容がローカルリポジトリに反映される。
あとはローカルリポジトリをリモートリポジトリに反映するだけだ!とプッシュしようとすると問題発生。
この時点では、ローカルリポジトリから見てpush先がわからない状況である。
手順3 gitlab上のプロジェクトにリモートリポジトリを作成
gitlab上のプロジェクトにリモートリポジトリを作成する前準備として、gitlab上のプロジェクトのpathを取得する必要がある。(住所のようなもの)
以下の画像中のSSHでクローン欄内のpathを取得する。
取得後以下のコマンドを入力し、gitlab上のプロジェクト内にリモートリポジトリを作成する
git remote add [リモートリポジトリ名] [取得したpath]
以上のコマンドより、ローカルリポジトリとリモートリポジトリが接続できる。
厳密にいうと接続ではないが、イメージとしては接続に近いと個人的に思う。
ローカルリポジトリの内容をリモートリポジトリに反映
ここまできたら、お馴染みのpushをするだけである。
pushは以下のコマンドで行う。
git push [リモートリポジトリ名] [ローカルブランチ名 : リモートブランチ名]
ローカルブランチ名の内容をリモートブランチ名に反映する。
これまでの手順を踏むことでローカルリポジトリの内容をリモートリポジトリに反映することができた。