LESSON 25分

リポジトリを理解しよう

このセクションで学ぶこと

「リポジトリ」はGitの最も重要な概念です。 リポジトリとは何か、どんな種類があるかを学びましょう。


リポジトリ(Repository)とは

一言で言うと

ファイルの変更履歴を保存する「箱」

例え話

リポジトリは「タイムカプセル付きの倉庫」のようなもの。

  • ファイルを入れると保管される
  • いつ何を入れたか全部記録される
  • 過去に入れたものも取り出せる

略称

「リポジトリ」は長いので、よく「リポ」や「repo(レポ)」と略されます。


ローカルリポジトリとリモートリポジトリ

Gitには2種類のリポジトリがあります。

┌─────────────────────────────────┐
│  リモートリポジトリ               │
│  (GitHub, GitLabなど)          │
│  ┌───────────────────────────┐  │
│  │  みんなで共有する場所       │  │
│  └───────────────────────────┘  │
└─────────────────────────────────┘
              ↑ push
              ↓ pull / clone
┌─────────────────────────────────┐
│  ローカルリポジトリ               │
│  (あなたのPC)                  │
│  ┌───────────────────────────┐  │
│  │  自分だけの作業場所         │  │
│  └───────────────────────────┘  │
└─────────────────────────────────┘

ローカルリポジトリ

一言で言うと

あなたのPC上にあるリポジトリ

特徴

項目内容
場所自分のPC
アクセス自分だけ
ネット接続不要
用途日常の作業

/Users/tanaka/projects/my-app/
├── .git/          ← これがリポジトリの本体(隠しフォルダ)
├── index.html
├── style.css
└── script.js

.git フォルダの中に、すべての変更履歴が保存されています。


リモートリポジトリ

一言で言うと

インターネット上にあるリポジトリ

特徴

項目内容
場所GitHub, GitLabなどのサーバー
アクセス設定次第(公開 or プライベート)
ネット接続必要
用途バックアップ、チーム共有

例(GitHub)

https://github.com/tanaka/my-app

ブラウザでアクセスして、コードを見たりダウンロードしたりできます。


ローカルとリモートの関係

基本的な流れ

1. リモートからコピー(clone)
   GitHub → 自分のPC

2. ローカルで作業
   ファイルを編集 → commit

3. リモートに送信(push)
   自分のPC → GitHub

4. リモートから取得(pull)
   GitHub → 自分のPC(他の人の変更を取り込む)

コマンドとの対応

操作コマンド方向
コピーgit cloneリモート → ローカル
送信git pushローカル → リモート
取得git pullリモート → ローカル

リポジトリの作り方(2つの方法)

方法1: ゼロから作る(git init)

bash
mkdir my-project          # フォルダを作成
cd my-project             # フォルダに移動
git init                  # リポジトリを初期化

→ 空のローカルリポジトリができる

方法2: リモートからコピー(git clone)

bash
git clone https://github.com/someone/some-project.git

→ リモートリポジトリの完全なコピーがローカルにできる


.gitフォルダの中身

リポジトリを作ると、.git という隠しフォルダができます。

bash
ls -la .git
.git/
├── HEAD           # 現在のブランチ
├── config         # リポジトリの設定
├── hooks/         # 自動実行スクリプト
├── objects/       # ファイルの実体(圧縮されている)
├── refs/          # ブランチやタグの情報
└── ...

中身を覚える必要はありません。 「.gitフォルダ = リポジトリの本体」と覚えておけばOK。

注意

.git フォルダを削除すると、すべての履歴が消えます。 間違って消さないように注意しましょう。


公開リポジトリと非公開リポジトリ

GitHub/GitLabでリポジトリを作るとき、公開設定を選べます。

種類誰が見れる用途
Public(公開)誰でもオープンソース、ポートフォリオ
Private(非公開)招待された人だけ業務、個人プロジェクト

GitHubの場合

  • 無料アカウントでもPrivateリポジトリは無制限に作れる
  • 企業の業務コードは通常Private

ハンズオン

実際にローカルリポジトリを作ってみましょう。

1. 練習用フォルダを作成

bash
mkdir ~/git-practice
cd ~/git-practice

2. リポジトリを初期化

bash
git init

出力例:

Initialized empty Git repository in /Users/tanaka/git-practice/.git/

3. .gitフォルダを確認

bash
ls -la

出力例:

total 0
drwxr-xr-x   3 tanaka  staff   96  1 27 10:00 .
drwxr-xr-x+ 28 tanaka  staff  896  1 27 10:00 ..
drwxr-xr-x   9 tanaka  staff  288  1 27 10:00 .git

.git フォルダが作成されました!

4. Gitの状態を確認

bash
git status

出力例:

On branch main

No commits yet

nothing to commit (create/copy files and use "git add" to track)

→ 空のリポジトリが完成しました!


まとめ

用語意味
リポジトリ変更履歴を保存する箱
ローカルリポジトリ自分のPC上のリポジトリ
リモートリポジトリインターネット上のリポジトリ
.gitフォルダリポジトリの本体

チェックリスト

  • リポジトリとは何か説明できる
  • ローカルとリモートの違いが分かる
  • git init でリポジトリを作成できる

次のステップへ

リポジトリの概念は理解できましたか?

次のセクションでは、Gitでよく使う基本用語を学びます。 commit, add, push など、最初は混乱しやすい言葉を整理しましょう。


推定読了時間: 25分