第2回 | git status で今の状態を見る | Git で最初に身につけたい確認の基本|UNIX Cafe

* 当サイトでは、コンテンツの一部に広告を掲載しています。

System Note $ cat /proc/ai-disclosure

本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。

第2回 | git status で今の状態を見る | Git で最初に身につけたい確認の基本|UNIX Cafe

Git 入門 | 第2回

Git を使い始めると、すぐに addcommit をしたくなりがちです。でも最初に大事なのは、いきなり操作することではなく、今どんな状態にあるのかを落ち着いて確認することです。

今回は、Git で最初に身につけたい確認の基本として git status を見ていきます。コマンドの出力を読めるようになるだけで、Git の操作がかなり落ち着いてできるようになります。

📝 この記事で学べること

  • git status が教えてくれること
  • 実際の出力パターンと読み方
  • untrackedmodified の違い
  • 初心者がつまずきやすいポイントと対処
  • 迷ったときに git status へ戻る習慣
目次

git status は「今の状態を見る」コマンド

git status は、今の作業ディレクトリがどうなっているかを整理して見せてくれるコマンドです。新しいファイルがあるのか、すでにあるファイルが変わったのか、次に何を考えるべきかの手がかりがここに出ています。

git status

このコマンドは変更の中身を読む道具ではなく、まず全体の状況を把握する道具です。何かする前に必ずここで状態を確認する、という習慣を最初に作っておくと、Git の操作全体がずっと落ち着いてできるようになります。

出力パターンを読む

git status の出力は、状態によって変わります。よく見るパターンを 3 つ確認しておきましょう。

パターン1|何も変更がない状態

On branch main
nothing to commit, working tree clean

nothing to commit, working tree clean は、記録待ちの変更が何もない状態です。作業を始める前や、commit を終えた直後によく見る表示です。

パターン2|新しいファイルがある状態(untracked)

On branch main
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        notes/today.txt

nothing added to commit but untracked files present

Untracked files: の欄に表示されるのは、Git がまだ追跡していない新しいファイルです。存在はしているけれど、まだ一度も addcommit もされていない状態を意味します。

パターン3|既存ファイルが変更された状態(modified)

On branch main
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   notes/today.txt

Changes not staged for commit: の欄に表示されるのは、以前に commit したことがあるファイルに変更が加わった状態です。modified: のあとにファイル名が表示されます。

untracked と modified の違い

この 2 つは混同しやすいので、整理しておきます。

表示意味状況
untrackedGit が追跡していないファイル新しく作ったファイルで、まだ一度も add していない
modified追跡中のファイルに変更がある以前に commit したファイルを編集した

どちらも「次に add して commit できる候補」ですが、Git から見た扱いが異なります。untracked は Git の管理外、modified は Git の管理内で変更があった状態です。

出力に含まれるヒントを読む

git status の出力には、次の操作のヒントがカッコ書きで含まれています。

出力に含まれるヒント意味
(use "git add <file>..." to include...)このファイルを add すると記録候補になる
(use "git restore <file>..." to discard...)このファイルの変更を取り消せる
(use "git restore --staged <file>..." to unstage)add を取り消せる

最初は英語で読みにくく感じるかもしれませんが、このヒントを見ながら操作を選ぶ習慣をつけると、Git の流れがつかみやすくなります。

初心者がつまずきやすいポイント

git status を実行したらエラーが出た

fatal: not a git repository と表示された場合は、Git で管理されていないフォルダで実行しています。git init でリポジトリを作るか、管理済みのフォルダに移動してから実行しましょう。

untracked のファイルが多すぎて見づらい

不要なファイルが大量に untracked として表示される場合は、.gitignore というファイルを使って Git の追跡から除外できます。ログファイルや一時ファイルなどを除外するために使いますが、入門段階では「そういう仕組みがある」と知っておくだけで十分です。

nothing to commit なのに何かした気がする

ファイルを編集して保存しても、Git はその変更を自動では記録しません。git addgit commit の流れを経て初めて記録されます。編集しただけでは status に変化が出ないわけではなく、保存さえされていれば modified として表示されるはずです。表示が出ない場合は、ファイルの保存を確認してみましょう。

迷ったら git status に戻る

Git で操作に迷ったとき、まず git status を実行するだけで状況が整理されることがよくあります。「今どのファイルが変わっているか」「何が add 済みか」「次に何をすべきか」を確認する入口として、常にここへ戻る習慣を持っておくと安心です。

Git の操作で困ったときの最初の一手は git status。このひとつだけ覚えておくだけでも、かなり落ち着いて作業を進められるようになります。

次回は git add と git commit を見ていきます

状態が見えるようになったら、次はその変更のうち何を記録したいかを選ぶ段階です。次回は git addgit commit をセットで整理し、変更を選んで履歴として残す流れを確認します。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

のいのアバター のい UNIX Cafe マスター

Macintosh Color Classicから始まった旅は、長いWindows時代を経て、Windows10のサポート終了をきっかけにUNIXの世界へ戻ってきました。UNIX Cafeでは、UNIX・Linux・そしてMacな世界を、むずかしい言葉を使わず、物語のように書いています。プログラミングは、アイデアをコンピューターに伝えるための言葉です。簡単な単語と文法を覚えれば、誰でもコマンドを使えます。ぜひ一度、やさしいプログラミングの世界をのぞいてみてください。

Created by UNIX Cafe

目次