
コマンドは優雅な呪文|特別編 Git基本操作入門
著者: 管理者 / 2025-08-25 (更新: 2025-08-25)
— 手に馴染むターミナルと、小さな勇気 —

先生、いよいよ実践ですのね! わたくし、基本コマンドをまとめて覚えたいですわ。操作の流れも、迷わないように丁寧に知りたいですの✨

承知しました。今日は「最初の設定 → はじめ方 → 記録(add/commit) → 戻す → ブランチ運用 → 共同作業 → 失敗しない日常フロー」の順で、実務の流れそのままに解説します。
📝 解説:最初の一歩(1回だけの初期設定)
まずは“誰が書いたか”を残す準備です。PCに一度だけ設定します。
# ユーザー情報(必須)
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
# よく使う推奨設定
git config --global init.defaultBranch main # 新規リポの既定ブランチ名
git config --global pull.rebase false # pull の既定挙動(後述)
git config --global core.autocrlf input # 改行の扱い(mac/linux: input / win: true 推奨)
git config --global color.ui auto # 端末で色表示
# 設定確認
git config --list --global

最初の名札貼り、でございますわね。これで履歴に「作者」が残る、と…😊
📝 解説:プロジェクトのはじめ方(init と clone)
- 新規で始める(空のフォルダから)
mkdir my-app && cd my-app
git init
echo "# My App" > [README](/blog/README)
echo "node_modules/" > .gitignore
git add .
git commit -m "chore: bootstrap project"
- 既存リポジトリを取ってくる(GitHubなど)
git clone https://github.com/owner/repo.git
cd repo
git status
迷ったら
git status
。今の作業状況の“健康診断”だと思ってください。

`.gitignore` は“入れない荷物リスト”。大きな生成物(`node_modules/` や `dist/`)は入れないのが礼儀です。
📝 解説:変更を“写真に撮る”—— add / commit / log / diff
変更は ステージング → コミット の二段構えで記録します。
git status # 変更の有無を確認
git add <file> # 個別に乗せる
git add . # 変更をまとめて乗せる
git commit -m "feat: add login" # スナップショットを保存
git log --oneline --graph --decorate --all # 履歴の鳥瞰図
git diff # まだステージしていない差分
git diff --staged # これからコミットされる差分
コミットメッセージのコツ
- 1行目は“結果を要約”:「fix: handle empty input」
- 必要なら空行の後に理由や背景を詳述

まあ!写真みたいに“パシャ”と保存する感じですのね。`log` の矢印が小さな物語に見えてきましたわ📚
📝 解説:やり直しの美学——restore / reset / revert / stash
怖がらずに直せると、思い切って作業できます。
# ファイルの変更を捨てる(未ステージぶん)
git restore <file>
# ステージから降ろす
git restore --staged <file>
# “コミットを取り消して履歴を作り直す”(ローカル向け)
git reset --soft HEAD~1 # 直前のコミットを解体し、変更はステージに残す
git reset --mixed HEAD~1 # 変更はワーキングに残し、ステージは外す(既定)
git reset --hard HEAD~1 # 変更ごと消す(取り返しがつかない。慎重に)
# “履歴を壊さず、打ち消すコミットを作る”(共有履歴向け)
git revert <commit>
# 作業を一時避難
git stash push -m "wip: refactor"
git stash list
git stash pop # 取り出して適用(最新)
覚え方:
- 共有済みの履歴は revert(安全第一)
- 自分だけの履歴なら reset(ただし
--hard
は要注意)- 机の上を片付けたい時は stash

`reset --hard` は“紙ごとシュレッダー”。直前に `git status` と `git log` を確認してから使いましょう。
📝 解説:ブランチ運用——branch / switch / merge / rebase
“作業用の分岐レーン”がブランチです。
# ブランチの作成と移動
git branch # 一覧
git branch -vv # 追跡先つき一覧
git switch -c feature/login # 作成&切替
git switch main # 既存へ切替(旧: git checkout)
# 統合(merge)
git switch main
git pull origin main # 最新に更新
git merge feature/login # 変更を取り込む(履歴は分岐のまま)
# 線を真っ直ぐに整える(rebase:自分の未共有コミットにのみ)
git switch feature/login
git rebase main # mainの先頭に自分の作業を積み直す
コンフリクト解消フロー
- 競合ファイルをエディタで開く(
<<<<<<<
などの印を手で解消) - 解消後に
git add <file>
git merge --continue
またはgit rebase --continue
チームでは「共有ブランチに rebase しない」が無難。個人作業の整形に限定しましょう。

分岐レーンで安全運転、ですのね。`merge` は交差点で合流、`rebase` は車線を付け替えるイメージ…しっくり来ましたわ🚗
📝 解説:リモート連携——remote / fetch / pull / push
GitHubなど“中央の拠点”が リモート です。
# リモートの登録と確認
git remote add origin https://github.com/owner/repo.git
git remote -v
# 取り込み(安全な読み取り)
git fetch origin # 参照だけ更新(作業ツリーは変えない)
git pull # fetch + merge(既定)
git pull --rebase # fetch + rebase(履歴が直線的に)
# 送り出し(初回は上流設定 -u)
git push -u origin main # 以後は `git push` だけでOK
git push origin feature/login
# 共同作業での注意
# rebase後に上書きが必要な場合のみ(強制は危険、まずは相談)
git push --force-with-lease
GitHubでの基本の流れ(Pull Request)
feature/*
ブランチを作る → 実装- GitHubに push → Pull Request(PR)を作成
- レビュー&修正 → マージ(通常は “Squash and merge” か “Merge commit”)

“fetch してから考える”は良い習慣です。作業ツリーを荒らさず情報だけ更新できます。
📝 解説:日常で迷わない“レシピ集”
A. 個人開発の基本ルーチン
git switch -c feature/awesome # 作業枝を切る
# ...作業...
git add -A
git commit -m "feat: awesome"
git switch main
git pull --rebase # mainを最新に
git merge feature/awesome
git push
git branch -d feature/awesome # 使い終えた枝を掃除
B. チームでの安全運転(PR前提)
git switch -c feature/login
# ...作業...
git add -A
git commit -m "feat: login ui"
git fetch origin
git rebase origin/main # 自ブランチ上で整形(共有前)
git push -u origin feature/login
# → GitHubで Pull Request 作成 → レビュー → マージ
C. コンフリクトが出たら
git status
# 競合ファイルを直す → 保存
git add <fixed-file>
git merge --continue # あるいは git rebase --continue
D. 怖くなったら
git log --oneline --graph --decorate --all # まず状況確認
git stash push -m "panic button" # 机上退避
# 落ち着いてから取り出す
git stash pop

これなら明日から“何を押せばよいか”が分かりますわ! 迷子防止のレシピ、心強いですの🍀
📝 まとめ
- 初期設定で名札と作法を整える(
user.name
/user.email
、init.defaultBranch
など) - はじめ方は
git init
(新規)とgit clone
(取得) - 記録は
status → add → commit → log/diff
の型を作る - やり直しは用途で使い分け(
restore
/reset
/revert
/stash
) - ブランチ運用は
switch
とmerge
を基本、rebase
は“自分の未共有作業の整形”に限る - 共同作業は
fetch/pull/push
と PR が軸。強制 push は最後の手段 - 日常レシピを覚えて、まずは手を動かすのが近道

素晴らしい吸収力です。次回は「履歴の読み解き方」と「事故らないリカバリ術」を、もう一歩だけ深掘りしましょう。
こちらの記事もどうぞ
みんなで作るコードの宝箱|第1回 GitHub入門
歴史を操る力|第2回 Gitのバージョン管理とは?