YouTube解説準拠 · 実践手順書

初心者向け Git 基本 & 実践操作マニュアル

Python VTuber サプー「【わかりやすい!Git操作】初心者向けのGitの基本 〜 30分で入門!」

1 Gitの基本概念(まず押さえる4大用語)
① リポジトリ(Repository)

ソースコードやファイル群を1つのまとまりとして管理する場所(フォルダ)。.gitという隠しフォルダ内に全履歴情報が記録される。

② コミット(Commit)

「この時点のファイル状態」を履歴としてセーブ・記録すること。固有のハッシュ値(コミットID)が割り振られ、いつでもその状態へ復元可能。

③ ブランチ(Branch)

本番(メイン)のコードに影響を与えずに新機能開発や実験を行うための「枝分かれした作業線」。デフォルトは main(または master)。

④ マージ(Merge)

枝分かれしたブランチでの変更結果を、ベースとなるブランチ(mainなど)に取り込んで合体させる操作。

2 ファイルの3層構造とステータス遷移

Gitでは、ファイルをいきなりコミットするのではなく、「作業場所」→「コミット予約(ステージ)」→「コミット完了」の3段階を踏みます。

1. ワークツリー(作業場) → 2. ステージング領域(予約) → 3. リポジトリ(記録完了)
ファイル状態 意味 対応する操作
Untracked Gitの追跡対象になっていない新規ファイル git add <ファイル名> で追跡開始
Changes to be committed ステージング済み(コミット予約完了状態) git commit -m "メッセージ" で記録
Changes not staged for commit add後にさらに変更されたが、まだ予約されていない部分 最新を記録したいなら再度 git add
💡 .gitignore ファイルの活用
ログファイルやキャッシュ、エディタ固有の設定フォルダ(例: .idea/)など、Git管理したくないファイルは .gitignore にファイル名・フォルダ名を書いてコミットすれば自動で追跡から除外されます。
3 基本コマンド実践フロー(手作業マニュアル)
  1. リポジトリ初期化

    管理したいフォルダに移動し、Git管理を開始する。

    git init
  2. 状態の確認(超頻出)

    現在のブランチ、変更されたファイル、ステージング状態を確認する。

    git status
  3. ステージング(コミット予約)

    指定ファイル、またはフォルダ内全ファイルをコミット対象として登録する。

    git add <ファイル名> # 単一ファイル
    git add . # フォルダ内全変更を一括追加
  4. コミット(履歴記録)

    わかりやすい説明文を付けてその時点の状態を確定記録する。

    git commit -m "コミットメッセージ"
  5. 履歴の閲覧

    過去のコミット履歴とコミットID(ハッシュ値)を確認する(q で終了)。

    git log
4 ブランチ作成・切替・マージの手順
  1. 新しいブランチを作って切り替える

    mainから分岐して安全に新機能を開発する(階層命名 feature/... がおすすめ)。

    git checkout -b feature/user_login
  2. 既存ブランチへ切り替える

    ブランチを切り替えると、フォルダ内のファイル構成もそのブランチの状態に瞬間的に変化する。

    git checkout main
  3. ブランチをマージする(取り込む)

    取り込み先のブランチ(例: main)に移動した状態で、取り込みたいブランチ名を指定する。

    git merge feature/user_login
⚠️ マージの方向に注意!
「取り込みたい先(受け手)のブランチに checkout してから、取り込む対象(送り手)を指定して merge」します。逆向きにマージしないよう注意が必要です。
5 作業のやり直し・取り消し(reset と revert)
① 強制的に過去に戻す(reset --hard)

「色々いじったけど完全に以前のコミットの状態へ巻き戻したい」場合に使用。

git reset --hard <コミットID>

※巻き戻した以降の履歴・作業は失われ、元に戻したログも残りません。取り扱い注意。

② 打ち消しコミットを作る(revert)

特定のコミットで行った変更だけを「取り消す新しいコミット」を作成して相殺する。

git revert <取り消したいコミットID>

※「このコミットを取り消した」という履歴が綺麗に残るため、チーム開発でも安全です。

6 コンフリクト(競合)の仕組みとGUIによる解消

コンフリクトとは? 2つの異なるブランチで「同じファイルの同じ行」を変更したままマージしようとした際、Gitが自動判断できずに発生する衝突状態です。

コンフリクト解消の3画面比較(GUIツール / VSCode / PyCharm)

・左側: 取り込み先(メインブランチ)の現在のコード
・右側: 取り込もうとしている(フィーチャーブランチ)のコード
・中央(結果): 最終的に残すコード。両方の矢印ボタンを押して取り込んだり、手動編集で余分な改行を整えて「適用」すれば競合解消完了!

💡 GUI(VSCodeやPyCharm)でのGit操作のメリット
動画後半で紹介されているように、ブランチの分岐図(グラフ)やコンフリクト時の3画面マージエディタは、黒い画面(CUI)よりもVSCodeなどのGUIエディタを活用した方が直感的でミスを防ぎやすくなります。