ローカルのみで完結する Git 運用ガイド

What I Learned

Git を初めて使う人や個人開発者向けに、GitHub などのリモートを使わずにローカルだけで Git を完結させる運用方法を整理した。Git は本来ローカルにすべての履歴を持つ仕組みなので、リモートを覚える前にローカル Git を理解した方が扱いやすく、混乱も少ない。ローカル内でもバックアップ(擬似リモート/ミラー)が可能である。

Details

ローカルだけで Git を使うメリット

1. 基本操作とワークフロー

1-1. リポジトリ作成・状態確認

1git init
2git status

1-2. 変更を記録する流れ

1git add .
2git commit -m "作業内容"

1-3. 状態・履歴の確認

1git diff
2git log --oneline --graph --decorate

1-4. ブランチ操作

1git switch -c feature
2git switch main
3git branch -d feature

2. 過去バージョンに戻す(復旧コマンド)

2-1. ファイルだけ戻す

1git restore ファイル名

2-2. 直前のコミットを取り消す(作業内容は残す)

1git reset --soft HEAD^

2-3. コミットも変更も巻き戻す(破壊的)

1git reset --hard HEAD^

2-4. 特定のコミットに戻る

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

2-5. 履歴を壊さずに取り消す

1git revert <コミットID>

2-6. 過去の状態を参照

1git switch --detach <コミットID>

3. バックアップ(ローカル擬似リモート + ミラー)

Git の “リモート” は URL でなくてもよく、ローカルのフォルダをリモートとして登録できる。

3-1. 擬似リモート(ベアリポジトリ)でバックアップ

バックアップ側の作成:

1mkdir /path/to/backup
2cd /path/to/backup
3git init --bare

元リポジトリで登録:

1git remote add backup /path/to/backup

バックアップ実行:

1git push backup main

3-2. 完全バックアップ(ミラー)

--mirror を使うとリポジトリの全ブランチ・タグ・設定を丸ごとコピーできる。

ミラー作成:

1git clone --mirror /path/to/project /path/to/backup-mirror

3-3. 擬似リモートとミラーの使い分け

方法特徴向いている用途
擬似リモート(push)差分更新・軽量日常的なバックアップ
ミラー(–mirror)全情報を完全コピー月に数回のフルバックアップ

おすすめのローカル運用フロー

  1. 必要なら作業開始時にブランチを作る
  2. 変更があればこまめに add → commit
  3. diff / log で進捗確認
  4. ミスしたら restore / reset / revert
  5. 1日の区切りで擬似リモートへ push
  6. 定期的にミラーで完全バックアップ

クイックリファレンス

目的コマンド
状態確認git status
変更を記録git add .git commit -m ""
ブランチ作成・切替git switch -c / git switch
ファイルを戻すgit restore file
直前のコミット取り消しgit reset --soft HEAD^
完全巻き戻しgit reset --hard HEAD^
特定コミットに戻るgit reset --hard ID
履歴を保って取り消すgit revert ID
過去状態の参照git switch --detach ID
擬似リモートへバックアップgit push backup main
完全コピー(ミラー)git clone --mirror src dest

References