git status
を使って進んでいるコミットを確認する
このステップでは、git status
コマンドを使って、ローカルブランチにリモートブランチより進んでいるコミットがあるかどうかを確認する方法を学びます。これは、ローカルで変更を加えて、まだリモートリポジトリにプッシュしていないときによく見られるシナリオです。
まず、プロジェクトディレクトリにいることを確認しましょう。ターミナルを開き、my-time-machine
ディレクトリに移動します。
cd ~/project/my-time-machine
次に、新しいファイルを作成し、それにいくつかの内容を追加しましょう。このファイルを future_plans.txt
と呼びます。
echo "Plan for world domination." > future_plans.txt
次に、この新しいファイルをコミットの準備としてステージングエリアに追加する必要があります。
git add future_plans.txt
では、変更内容を説明するメッセージ付きでコミットを作成しましょう。
git commit -m "Add future plans"
新しいコミットが作成されたことを示す、次のような出力が表示されるはずです。
[master abcdefg] Add future plans
1 file changed, 1 insertion(+)
create mode 100644 future_plans.txt
これで、ローカルの master
ブランチに新しいコミットが作成されました。ただし、このコミットはローカルにのみ存在し、まだリモートリポジトリに送信されていません。
git status
を使って、リポジトリの現在の状態を確認しましょう。
git status
出力には、ローカルブランチがリモートブランチより 1 つのコミット分進んでいることが表示されるはずです(この基本的な例ではリモートブランチを設定していませんが、Git はそのヒントを提供します)。
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
new file: future_plans.txt
nothing to commit, working tree clean
ここで重要な行は Your branch is ahead of 'origin/master' by 1 commit.
です。これは、ローカルの master
ブランチに、origin/master
ブランチ(Git が期待するリモートブランチのデフォルト名)に存在しない 1 つのコミットがあることを示しています。
これは非常に有用な情報です。まだ他の人と共有されていないローカルの変更があることを知らせてくれます。実際のリモートリポジトリがあるシナリオでは、これは git push
で変更を送信する必要があることを示します。