このセクションで学ぶこと
「Git」「GitHub」「GitLab」「Bitbucket」…
バージョン管理の世界には似た名前がたくさんあります。これらの違いを理解して、混乱しないようにしましょう。
3つの言葉の関係
graph TD
subgraph Web["Webサービス(GitHub, GitLab, Bitbucket)"]
Remote["リモートリポジトリ<br/>インターネット上の保管場所"]
end
subgraph Local["Git(バージョン管理ソフトウェア)"]
LocalRepo["ローカルリポジトリ<br/>あなたのPC上の保管場所"]
end
LocalRepo -->|"push"| Remote
Remote -->|"pull"| LocalRepo
style Web fill:#dbeafe,stroke:#2563eb,stroke-width:2px,color:#1e40af
style Local fill:#d1fae5,stroke:#059669,stroke-width:2px,color:#064e3b
style Remote fill:#e0e7ff,stroke:#4f46e5,color:#312e81
style LocalRepo fill:#f0fdf4,stroke:#16a34a,color:#14532d
Git(ギット)とは
一言で言うと
バージョン管理を行うためのソフトウェア(ツール)
役割
- ファイルの変更履歴を記録する
- 過去の状態に戻れるようにする
- 複数人の変更を統合する
例え話
Gitは「タイムマシン付きのノート」のようなもの。書いた内容を全部記録していて、いつでも過去のページに戻れます。
特徴
| 項目 | 内容 |
|---|---|
| 種類 | 分散型バージョン管理システム |
| 開発者 | Linus Torvalds(Linuxの作者) |
| 公開年 | 2005年 |
| 料金 | 完全無料(オープンソース) |
| 動作場所 | あなたのPC(ローカル) |
Gitで使うコマンド例
git init # リポジトリを作成
git add # 変更をステージング
git commit # 変更を記録
git log # 履歴を表示
GitHub(ギットハブ)とは
一言で言うと
Gitリポジトリをインターネット上で管理・共有するWebサービス
役割
- リポジトリをクラウドに保存(バックアップ)
- チームメンバーとコードを共有
- プルリクエストでコードレビュー
- Issueでタスク管理
例え話
GitHubは「クラウド上の共有フォルダ + SNS」のようなもの。コードを保存するだけでなく、チームでコミュニケーションもできます。
特徴
| 項目 | 内容 |
|---|---|
| 種類 | Webサービス(SaaS) |
| 運営 | Microsoft(2018年に買収) |
| 料金 | 無料プランあり(個人なら十分) |
| URL | https://github.com |
| 利用者 | 1億人以上(世界最大) |
GitHubでできること
- リポジトリのホスティング(保管)
- プルリクエスト(コードレビューの依頼)
- Issues(バグ報告・タスク管理)
- Actions(自動テスト・デプロイ)
- Pages(Webサイト公開)
GitLab(ギットラボ)とは
一言で言うと
GitHubと同様のWebサービス。自社サーバーにも設置可能
役割
- GitHubとほぼ同じ機能
- 自社サーバーで運用できる(オンプレミス)
- CI/CD機能が充実
例え話
GitLabは「自前で建てられるGitHub」のようなもの。社外にコードを出せない企業でも使えます。
特徴
| 項目 | 内容 |
|---|---|
| 種類 | Webサービス + 自社設置版 |
| 運営 | GitLab Inc. |
| 料金 | 無料プランあり |
| URL | https://gitlab.com |
| 特徴 | CI/CDが標準装備 |
その他のサービス
Bitbucket(ビットバケット)
| 項目 | 内容 |
|---|---|
| 運営 | Atlassian(Jira, Confluenceの会社) |
| 特徴 | Jiraとの連携が強力 |
| 利用者 | 企業での利用が多い |
Azure DevOps
| 項目 | 内容 |
|---|---|
| 運営 | Microsoft |
| 特徴 | Azure(クラウド)との統合 |
| 利用者 | Microsoft系の企業 |
比較表
| 項目 | Git | GitHub | GitLab |
|---|---|---|---|
| 種類 | ソフトウェア | Webサービス | Webサービス |
| 動作場所 | ローカル | クラウド | クラウド/オンプレ |
| 料金 | 無料 | 無料〜 | 無料〜 |
| 必須度 | 必須 | ほぼ必須 | 企業による |
| 関係 | 基盤 | Gitを使うサービス | Gitを使うサービス |
重要なポイント
Git ≠ GitHub
Git = ツール(車のエンジン)
GitHub = サービス(レンタカー屋さん)
Gitは必須。GitHubは選択肢の1つ(でも最も一般的)。
どれを使えばいい?
個人学習・ポートフォリオ
→ GitHub がおすすめ
- 世界最大のユーザー数
- 就活でポートフォリオとして見せられる
- 情報が多く、困ったときに調べやすい
企業での業務
→ 会社の指定に従う
- GitHub Enterprise
- GitLab(オンプレミス)
- Bitbucket
など、会社によって異なります。
このミッションでは
GitHub を使って学習を進めます。
まとめ
| 用語 | 役割 | 例え |
|---|---|---|
| Git | バージョン管理ツール | タイムマシン付きノート |
| GitHub | リポジトリ共有サービス | クラウド共有フォルダ + SNS |
| GitLab | GitHub代替サービス | 自前で建てられるGitHub |
覚えておくこと
- Git = ツール(ソフトウェア)
- GitHub/GitLab = サービス(Webサイト)
- GitなしではGitHub/GitLabは使えない
次のステップへ
Git、GitHub、GitLabの違いは理解できましたか?
次のセクションでは、実際にGitをインストールしてみましょう。
推定読了時間: 25分