🧭 1. はじめに:なぜgit status
とgit log
をマスターすべきか?
Gitを使った開発で「今、何が起きているのか」を正確に把握することは非常に重要です。
チームでの作業中、こんな経験はありませんか?
- 「あれ、このファイルってコミットしたっけ?」
- 「誰がこのコードを変更したの?」
- 「バグの原因となる変更って、いつ行われたんだろう?」
このような疑問を解決してくれるのが、まさに git status
と git log
です。
この記事では、これら2つの基本かつ強力なコマンドについて、
- 実践的な使い方
- よくある落とし穴
- 現場で使える便利オプション
を実行例つきでわかりやすく解説していきます。
🧰 2. git status
とgit log
とは何か?
✅ git status
:作業ディレクトリの状態を確認
git status
は「現在の作業状況」を確認するコマンドです。
具体的には以下のような情報が得られます:
- どのファイルが変更されたか
- ステージ済みか未ステージか
- 未追跡(Untracked)ファイルの有無
$ git status
出力例:
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
modified: src/index.js
Untracked files:
(use "git add <file>..." to include in what will be committed)
test/test-helper.js
📜 git log
:コミット履歴を確認
git log
は過去の変更履歴を表示します。チーム開発における「変更の追跡」や「責任の所在」の確認にも非常に有効です。
$ git log
出力例:
commit 2e1a18c99f39c7d55b6...
Author: Gigi <gigi@example.com>
Date: Mon Jul 15 12:00:00 2025 +0900
fix: 修正したバグ #223
commit a8f99dc74e4c7eaf3f1...
Author: Taro Sato <taro@example.com>
Date: Sun Jul 14 09:45:00 2025 +0900
feat: ユーザ登録APIの追加
🛠 3. 実践例:よく使うコマンドと応用オプション
🎯 git status
の実践的な使い方
🔹 ステージされたファイルの確認
$ git add main.py
$ git status
→ Changes to be committed:
に表示されます。
🔹 変更のキャンセル(git restore
)
$ git restore main.py
🕵️ git log
の便利オプション
🔸 1行で履歴を確認(--oneline
)
$ git log --oneline
2e1a18c fix: 修正したバグ #223
a8f99dc feat: ユーザ登録APIの追加
🔸 日付・著者つきで見る
$ git log --pretty=format:"%h - %an, %ar : %s"
🔸 ファイル単位で履歴を追う
$ git log --follow src/utils.js
⚠️ 4. 実務での注意点・よくあるミス
ミス例 | 原因 | 対処法 |
---|---|---|
git status で変更が見えない |
ファイルが.gitignoreに含まれている |
.gitignore を確認 |
git log で履歴が多すぎて見にくい |
オプション未使用 |
--oneline や --grep を使う |
コミットが間違っていた | 内容確認不足 |
git show , git diff で確認してからコミット |
🚀 5. 応用編:チーム開発での活用術
🔄 特定のコミットの変更を確認
$ git show 2e1a18c
🔍 特定のキーワードを含むコミットだけを表示
$ git log --grep="bugfix"
⏪ 前の状態に戻す(※慎重に!)
$ git reset --hard HEAD~1
✅ 6. まとめ
項目 | 内容 |
---|---|
git status |
現在の作業状態を確認 |
git log |
過去の履歴を確認・追跡 |
実務でのコツ | オプションを活用して素早く目的にたどり着く |
推奨 | チーム開発前には必ず両方を活用して状態を確認する習慣を |
🔮 今後の展望と次回予告
Gitの習熟は、チーム開発やCI/CDの効率を大きく左右します。次回は「git diff
の使い方と、ブランチ戦略への応用」について詳しく紹介します。
「Gitの中身がようやく見えてきた!」
「これなら実務でも使えそう!」
と思ってもらえる記事を目指して、シリーズを続けていきます!
📝 この記事が役立ったら、いいね・ストックをお願いします!
📩 ご質問やフィードバックがあれば、コメント欄やTwitterでぜひどうぞ!
💡 執筆者情報:
フルスタックエンジニア兼テクニカルライター。AI・クラウド・GitOpsを専門とし、日々現場で培った知見をシェア中。