Open7

リモートリポジトリに変更履歴をアップロードするための手順

かいかい

リモートリポジトリに変更履歴をアップロードするための手順を以下にまとめました。Cloud9やローカル環境で行う作業を含め、GitとGitHubの基本的な流れを復習しましょう。

ディレクトリとファイルを作成

演習問題や課題に必要なディレクトリとファイルを作成します。

  • もし既にディレクトリを作成済みの場合、この手順はスキップして次に進みます。
Cloud9のターミナルでディレクトリへ移動

作成したディレクトリへ移動するために、Cloud9のターミナルを使います。

cd path_to_your_directory
ローカルリポジトリを作成する

Gitを使ってディレクトリをバージョン管理するために、ローカルリポジトリを作成します。

git init
GitHubでリモートリポジトリを作成する

GitHub上で新しいリポジトリを作成します。この際、ローカルのディレクトリ名と同じ名前を付けるとわかりやすいです。

  1. GitHubにログイン
  2. 右上の「+」ボタンから「New repository」を選択
  3. リポジトリ名を入力し、「Create repository」をクリック
変更履歴を保存する☆

作成したディレクトリやファイルの変更履歴をGitに記録します。

git add .
git commit -m "Initial Commit"

git add .で、ディレクトリ内の全てのファイルをステージに追加し、git commitでコミットメッセージを付けて変更履歴を保存します。

ローカルリポジトリとリモートリポジトリを紐づける

作成したリモートリポジトリのURLを使って、ローカルリポジトリとリモートリポジトリを紐づけます。

git remote add origin リモートリポジトリURL

成功したら、何も表示されない!

例:

git remote add origin https://github.com/yourusername/yourrepository.git
ブランチ名を「main」に変更する

ローカルリポジトリのデフォルトブランチ名が「master」である場合、これを「main」に変更します。

git branch -M main
リモートリポジトリへPushする☆

ローカルリポジトリの変更をリモートリポジトリに反映(プッシュ)します。

git push origin main

以上の手順で、リモートリポジトリにローカルの変更履歴がアップロードされます。この流れを覚えておくと、今後の開発で役に立ちます。

かいかい

開始 … Start 終了 … Finish 追加 … Add 更新 … Update 削除 … Remove 不具合修正

かいかい
git add .で何が起きる?

git add . を実行すると、現在のディレクトリ(. は「現在のディレクトリ」を指します)以下の全ての変更がGitのステージングエリアに追加されます。具体的には以下の内容が対象です:

  1. 新しく追加されたファイル: Gitでまだ追跡されていない新しいファイルもステージングエリアに追加されます。
  2. 変更があった既存のファイル: 既にGitで追跡されているファイルで変更があったものもステージングされます。
  3. 削除されたファイル: Gitで追跡されていたファイルが削除された場合も、その削除がステージングされます。

ステージングエリアに追加することで、次回の git commit でこれらの変更がコミットに含まれるようになります。

かいかい
ステージングとか、ステージングエリアってなに?

ステージングエリア(staging area)は、Gitの内部的な領域の一つで、次にコミットする変更を一時的に置く場所です。これにより、すぐにコミットしたくない変更や、部分的にコミットしたい変更を選んで準備することができます。

Gitのプロセス

Gitの基本的なプロセスは3つのステップに分かれています:

  1. 作業ディレクトリ(Working Directory):

    • ここで実際にファイルを作成・編集します。これは、ローカルのプロジェクトフォルダそのものです。
    • ファイルを変更しても、すぐにGitには反映されません。まだ「作業中」の状態です。
  2. ステージングエリア(Staging Area):

    • git add コマンドを使って、コミットしたい変更をステージングエリアに追加します。このエリアには「次にコミットする準備ができた変更」が置かれます。
    • 全ての変更をコミットせずに、一部のファイルだけをコミットしたい場合などに便利です。
  3. リポジトリ(Repository):

    • git commit コマンドを実行すると、ステージングエリアにある変更がコミットされ、リポジトリに保存されます。これで変更履歴が記録され、後から変更を確認したり、戻したりすることができるようになります。

なぜステージングエリアが必要?

  • 選択的にコミットできる: ステージングエリアを使うことで、ファイルの一部だけを選んでコミットすることが可能です。すべての変更をコミットせず、必要なものだけをまとめてコミットできます。
  • コミットの準備: まだコミットする準備ができていない変更はステージングせず、後で追加できます。これにより、細かい作業を整理して管理できます。

つまり、ステージングエリアはコミットの準備をするための「待機場所」であり、git add を使って、ここに変更を送り込み、git commit で実際にリポジトリに保存します。

かいかい

git addが一時保存ボタンみたいで、
git commitが保存確定ボタンみたいで、
git pushが投稿や共有ボタンみたい!