コンテンツにスキップ

GitHubとは

この章では、GitHubの基本概念と、似たようなサービスとの違いを理解します。

Gitは、ソースコードのバージョン管理を行う分散型バージョン管理システムです。

Gitでできること:
- ファイルの変更履歴を記録・追跡
- 過去の状態に戻す
- 複数人での並行作業(ブランチ)
- ローカル環境で完結する操作

Gitは2005年にLinuxカーネルの開発者であるLinus Torvaldsによって作られました。

GitHubは、GitリポジトリをホスティングするWebサービスです。

GitHubでできること:
- Gitリポジトリのクラウド保存
- チームでのコラボレーション
- プルリクエストによるコードレビュー
- Issue管理、プロジェクト管理
- CI/CD(GitHub Actions)
- AIアシスタント(GitHub Copilot)
┌─────────────────────────────────────────────────────┐
│ GitHub(クラウド) │
│ ┌─────────────────────────────────────────────┐ │
│ │ リモートリポジトリ │ │
│ │ - コードのバックアップ │ │
│ │ - チーム共有 │ │
│ │ - PR、Issue、Projects等 │ │
│ └─────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘
↑↓ push / pull
┌─────────────────────────────────────────────────────┐
│ ローカル環境(PC) │
│ ┌─────────────────────────────────────────────┐ │
│ │ ローカルリポジトリ │ │
│ │ - Git によるバージョン管理 │ │
│ │ - commit, branch, merge 等 │ │
│ └─────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘

GitHubには複数のプランがあります。

プラン料金主な特徴
Free無料無制限のパブリック/プライベートリポジトリ、GitHub Actions 2,000分/月
Pro$4/月Freeの機能 + 高度なコードレビューツール、Wikiなど
プラン料金主な特徴
Team$4/ユーザー/月チーム管理、ブランチ保護ルール、CODEOWNERS
Enterprise$21/ユーザー/月SAML SSO、監査ログ、高度なセキュリティ機能
個人で学習・OSS開発 → Free で十分
個人で本格開発 → Pro を検討
チーム開発(3人以上) → Team
企業でセキュリティ重視 → Enterprise
学生・教育機関向け GitHub Education プログラムで、学生は GitHub Pro 相当の機能を無料で利用できます。 https://education.github.com/

主要なGitホスティングサービス

Section titled “主要なGitホスティングサービス”
サービス特徴向いている用途
GitHub最大のユーザー数、豊富なエコシステムOSS開発、一般的な開発
GitLabCI/CDが強力、セルフホスト可能DevOps重視、オンプレ要件
BitbucketAtlassian製品との連携Jira/Confluenceユーザー
Azure DevOpsMicrosoft製品との連携.NET開発、Azure利用者
  1. コミュニティの大きさ: 世界最大の開発者コミュニティ
  2. エコシステム: GitHub Actions、Copilot、Packagesなど
  3. 採用率: 多くの企業・OSSプロジェクトが利用
  4. 学習リソース: ドキュメント、チュートリアルが豊富

Terminal window
# GitHub CLI のインストール後
gh repo create my-project --private --clone
# ブラウザを開かずにPR作成
gh pr create --title "機能追加" --body "詳細説明"
Terminal window
# 自分のリポジトリ一覧を取得
curl -H "Authorization: token YOUR_TOKEN" \
https://api.github.com/user/repos

項目内容
Gitローカルで動くバージョン管理ツール
GitHubGitリポジトリのクラウドホスティング+コラボレーション
料金個人はFreeで十分、チームはTeam以上
競合GitLab、Bitbucket等があるが、GitHubが最大シェア

次の章では、GitHubアカウントの作成と初期設定を行います。

Q1. GitとGitHubの違いについて正しい説明はどれですか?

Q2. GitHubの無料プラン(Free)について正しいものはどれですか?

Q3. GitHubを選ぶ主な理由として適切でないものはどれですか?