LESSON 25分

Git・GitHub・GitLabの違い

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

「Git」「GitHub」「GitLab」「Bitbucket」...

バージョン管理の世界には似た名前がたくさんあります。 これらの違いを理解して、混乱しないようにしましょう。


3つの言葉の関係

┌─────────────────────────────────────────────────┐
│  Webサービス(GitHub, GitLab, Bitbucket)        │
│  ┌───────────────────────────────────────────┐  │
│  │  リモートリポジトリ                         │  │
│  │  (インターネット上の保管場所)              │  │
│  └───────────────────────────────────────────┘  │
└─────────────────────────────────────────────────┘
                    ↑ push/pull
┌─────────────────────────────────────────────────┐
│  Git(バージョン管理ソフトウェア)                │
│  ┌───────────────────────────────────────────┐  │
│  │  ローカルリポジトリ                         │  │
│  │  (あなたのPC上の保管場所)                  │  │
│  └───────────────────────────────────────────┘  │
└─────────────────────────────────────────────────┘

Git(ギット)とは

一言で言うと

バージョン管理を行うためのソフトウェア(ツール)

役割

  • ファイルの変更履歴を記録する
  • 過去の状態に戻れるようにする
  • 複数人の変更を統合する

例え話

Gitは「タイムマシン付きのノート」のようなもの。 書いた内容を全部記録していて、いつでも過去のページに戻れます。

特徴

項目内容
種類分散型バージョン管理システム
開発者Linus Torvalds(Linuxの作者)
公開年2005年
料金完全無料(オープンソース)
動作場所あなたのPC(ローカル)

Gitで使うコマンド例

bash
git init      # リポジトリを作成
git add       # 変更をステージング
git commit    # 変更を記録
git log       # 履歴を表示

GitHub(ギットハブ)とは

一言で言うと

Gitリポジトリをインターネット上で管理・共有するWebサービス

役割

  • リポジトリをクラウドに保存(バックアップ)
  • チームメンバーとコードを共有
  • プルリクエストでコードレビュー
  • Issueでタスク管理

例え話

GitHubは「クラウド上の共有フォルダ + SNS」のようなもの。 コードを保存するだけでなく、チームでコミュニケーションもできます。

特徴

項目内容
種類Webサービス(SaaS)
運営Microsoft(2018年に買収)
料金無料プランあり(個人なら十分)
URLhttps://github.com
利用者1億人以上(世界最大)

GitHubでできること

  • リポジトリのホスティング(保管)
  • プルリクエスト(コードレビューの依頼)
  • Issues(バグ報告・タスク管理)
  • Actions(自動テスト・デプロイ)
  • Pages(Webサイト公開)

GitLab(ギットラボ)とは

一言で言うと

GitHubと同様のWebサービス。自社サーバーにも設置可能

役割

  • GitHubとほぼ同じ機能
  • 自社サーバーで運用できる(オンプレミス)
  • CI/CD機能が充実

例え話

GitLabは「自前で建てられるGitHub」のようなもの。 社外にコードを出せない企業でも使えます。

特徴

項目内容
種類Webサービス + 自社設置版
運営GitLab Inc.
料金無料プランあり
URLhttps://gitlab.com
特徴CI/CDが標準装備

その他のサービス

Bitbucket(ビットバケット)

項目内容
運営Atlassian(Jira, Confluenceの会社)
特徴Jiraとの連携が強力
利用者企業での利用が多い

Azure DevOps

項目内容
運営Microsoft
特徴Azure(クラウド)との統合
利用者Microsoft系の企業

比較表

項目GitGitHubGitLab
種類ソフトウェアWebサービスWebサービス
動作場所ローカルクラウドクラウド/オンプレ
料金無料無料〜無料〜
必須度必須ほぼ必須企業による
関係基盤Gitを使うサービスGitを使うサービス

重要なポイント

Git ≠ GitHub

Git    = ツール(車のエンジン)
GitHub = サービス(レンタカー屋さん)

Gitは必須。GitHubは選択肢の1つ(でも最も一般的)。


どれを使えばいい?

個人学習・ポートフォリオ

GitHub がおすすめ

  • 世界最大のユーザー数
  • 就活でポートフォリオとして見せられる
  • 情報が多く、困ったときに調べやすい

企業での業務

会社の指定に従う

  • GitHub Enterprise
  • GitLab(オンプレミス)
  • Bitbucket

など、会社によって異なります。

このミッションでは

GitHub を使って学習を進めます。


まとめ

用語役割例え
Gitバージョン管理ツールタイムマシン付きノート
GitHubリポジトリ共有サービスクラウド共有フォルダ + SNS
GitLabGitHub代替サービス自前で建てられるGitHub

覚えておくこと

  1. Git = ツール(ソフトウェア)
  2. GitHub/GitLab = サービス(Webサイト)
  3. GitなしではGitHub/GitLabは使えない

次のステップへ

Git、GitHub、GitLabの違いは理解できましたか?

次のセクションでは、実際にGitをインストールしてみましょう。


推定読了時間: 25分