Git の基本コマンド
Git でバージョン管理を始めるための 3 つの基本コマンドを学びます。
init・
add・
commit
の 3 ステップが Git の基本的な流れです。
Git の 3 つのエリア
概念📁
ワーキングツリー
用語実際に編集する
ファイルの場所
git add
→
📋
ステージングエリア
用語コミット準備中の
変更を置く場所
git commit
→
🗂️
リポジトリ
用語変更履歴が
永続的に保存される場所
1
git init — リポジトリを作成する
コマンド
プロジェクトのフォルダで git init を実行すると、
そのフォルダが Git リポジトリになります。.git という隠しフォルダが作成され、
以降すべての履歴がここに保存されます。
ターミナル
# プロジェクトフォルダに移動 $ cd my-project # Git リポジトリを初期化 $ git init Initialized empty Git repository in /my-project/.git/ # .git フォルダが作成されたことを確認(Mac/Linux/Git Bash) $ ls -la drwxr-xr-x .git ← これが Git の管理フォルダ
Windows の方へ:
ls -la は Mac/Linux のコマンドです。
Windows コマンドプロンプトでは dir、
PowerShell では ls が使えます。
Git for Windows に付属の Git Bash を使っている場合は ls -la がそのまま動きます。
2
git add — 変更をステージングする
コマンド
ファイルを編集したら、git add でコミットする変更を選びます。
「この変更を記録に含める」という宣言のようなものです。
git add ファイル名 コマンド 特定のファイルだけをステージング
git add . コマンド 現在フォルダの全変更をステージング
git add -p コマンド 変更を確認しながら選んでステージング
ターミナル
# ファイルを作成・編集した後 $ git status Untracked files: index.html ← まだ追跡されていない # index.html をステージングに追加 $ git add index.html $ git status Changes to be committed: new file: index.html ← 緑になった!コミット待ち
3
git commit — 変更を記録する
コマンド
ステージングした変更を git commit で履歴に記録します。
-m オプションでコミットメッセージを添えましょう。
ターミナル
# 変更を記録(メッセージ付き) $ git commit -m "トップページを追加" [main (root-commit) a1b2c3d] トップページを追加 1 file changed, 20 insertions(+) # 履歴を確認 $ git log --oneline a1b2c3d トップページを追加
コミットメッセージのコツ
✗ 悪い例
"修正"— 何を修正した?"update"— 意味が曖昧"asdfg"— 意味なし
✓ 良い例
"ログインフォームのバリデーションを追加""fix: ボタンが押せないバグを修正""feat: ダークモードを実装"
コマンド
git log — 履歴を読む
git log はそのまま実行すると情報が多すぎます。オプションを組み合わせて見やすくしましょう。
git log --oneline コマンド 1コミット1行で表示。全体像を素早く把握するときに使う。
a1b2c3d feat: ログインフォームを追加 e4f5g6h fix: ボタンが押せないバグを修正 7h8i9j0 feat: トップページを追加
git log --oneline --graph --all コマンド ブランチの分岐・マージをグラフで表示。どのブランチで何が起きたか一目でわかる。
* a1b2c3d (HEAD -> main) feat: マージ |\ | * e4f5g6h (feature/login) feat: ログインを追加 |/ * 7h8i9j0 feat: トップページを追加
git show コミットID コマンド 特定コミットの詳細(変更差分)を表示。コミットIDは --oneline で確認した7桁を使う。
commit a1b2c3d
Author: your-name <your@email.com>
feat: ログインフォームを追加
+<form id="login">...</form> その他の便利コマンド
コマンド
git status 現在の状態を確認。変更されたファイル・ステージング済みのファイルが一覧で見える。
コマンド
git diff ステージングしていない変更の差分を表示。何を変えたか確認できる。
コマンド
git restore ファイル名 ステージングしていない変更を取り消す(危険:元に戻せない)。