この記事でわかること
- GitHubとは何か、一言でわかる定義
- GitとGitHubの違い(混同しやすいポイントをすっきり整理)
- リポジトリ・コミット・ブランチ・プルリクエストなどの基本用語
- GitHubが実際にどんな場面で使われているか
- エンジニアでない方がGitHubを知っておくべき理由
GitHubとは
一言で言うと「コードの保管・共有サービス」
GitHub(ギットハブ)とは、プログラムのソースコードをインターネット上に保存・管理・共有できるクラウドサービスです。
もっと平たく言うと、「プログラマーのためのGoogle ドライブ」のようなイメージに近いです。ファイルをクラウドに保存・共有できるという点は共通しており、そこにさらに「変更の履歴を細かく管理できる」「複数人が同時に作業できる」「変更内容をレビューして承認する仕組みがある」といった開発特化の機能が加わっています。
GitHubには世界中の開発者がコードをアップロードしており、公開設定にすれば誰でも閲覧・活用できます。多くの有名なソフトウェア・ツール・ライブラリのソースコードがGitHubで公開されており、開発者にとって欠かせないインフラとなっています。
Microsoftが運営する世界最大のプラットフォーム
GitHubは2008年にサービスを開始し、2018年にMicrosoftが約75億ドルで買収しました。現在もMicrosoftの傘下で運営されており、2024年時点で世界1億人以上の開発者が利用する世界最大のコードホスティングプラットフォームです。
GitHubは個人・チーム・企業を問わず利用されており、個人の学習目的から、グローバル企業の大規模システム開発まで幅広く活用されています。無料プランも充実しており、個人の開発者や小規模チームは無料で主要な機能を使えます。
GitとGitHubの違い
GitとGitHubは名前が似ているため混同されがちですが、まったく別のものです。
Gitとはバージョン管理の仕組み
Git(ギット)は、ファイルの変更履歴を記録・管理するための「バージョン管理システム」です。2005年にLinuxカーネルの開発者として知られるリーナス・トーバルズ氏によって開発されました。
Gitをひとことで説明するなら、「変更の歴史をセーブしておける仕組み」です。
例えば、Word文書を編集するとき、以前のバージョンに戻したいと思ったことはないでしょうか。Gitを使うと、プログラムのコードに対してこれを自由に行えます。「3日前の状態に戻す」「どの行をいつ誰が変更したかを確認する」といった操作が可能になります。
Gitはソフトウェアであり、自分のコンピューター上で動作します。インターネット接続がなくても使えます。つまり、GitHubがなくてもGitは使えます。
GitHubはGitを使うためのクラウドサービス
一方、GitHubはGitの機能をベースに、インターネット上でコードを管理・共有するためのクラウドサービスです。
Gitが「ローカル(自分のPC)での変更管理」を担うのに対し、GitHubは「クラウドへのバックアップ・チームでの共有・コードレビュー」を担います。
| 比較 | Git | GitHub |
|---|---|---|
| 種類 | ソフトウェア(ツール) | クラウドサービス |
| 動作場所 | 自分のPC上 | インターネット上 |
| 提供元 | オープンソース | Microsoft |
| 役割 | 変更履歴の管理 | コードの保存・共有・チーム開発 |
| 料金 | 無料 | 無料プランあり(有料プランも) |
「Gitを使いこなすためのサービスがGitHub」という理解が最もシンプルです。
GitHubの基本用語
GitHubを理解するうえで知っておきたい基本用語を解説します。
リポジトリとは
リポジトリ(repository)は、プロジェクトのファイルや変更履歴をまとめて保存する場所のことです。「レポジトリ」「リポ」と呼ばれることもあります。
Google ドライブでいう「フォルダ」に近いイメージですが、単なるファイルの保存場所ではなく、いつ・誰が・何を変更したかという履歴情報も一緒に管理されています。
リポジトリには「パブリック(公開)」と「プライベート(非公開)」の2種類があり、オープンソースプロジェクトではパブリックで公開されていることが多いです。
コミットとは
コミット(commit)とは、ファイルへの変更を「ひとまとまりの記録」として保存する操作のことです。
ゲームのセーブポイントに例えるとわかりやすいでしょう。ある作業が一段落したタイミングで「コミット」することで、その時点の状態を記録しておけます。何か問題が起きたときに、特定のコミットの時点まで戻ることが可能です。
コミットには必ず「コミットメッセージ」をつける習慣があります(例:「ログイン機能を追加した」「バグを修正した」など)。これにより、後から変更履歴を見返したときに何をしたかが一目でわかります。
ブランチとは
ブランチ(branch)とは、開発の「作業ライン」を分岐させる仕組みです。木の幹から枝が伸びるイメージです。
本番環境のコード(main/masterブランチ)はそのままにしておき、新機能の開発や修正作業は別のブランチで行います。作業が完了したら、そのブランチを本番のブランチに合流(マージ)させます。
これにより、開発中のコードが本番に影響を与えることなく、安全に並行作業できます。チーム内で複数人が異なる機能を同時に開発するときに特に重要な仕組みです。
プルリクエストとは
プルリクエスト(Pull Request / PR)とは、自分が作業したブランチを本番ブランチに取り込んでほしいと申請する仕組みです。
開発の流れでいうと、「自分の作業ブランチで機能を完成させた → 本番に反映してよいか確認してほしい」という申請をするのがプルリクエストです。
プルリクエストを受けたチームメンバーは、変更内容(どのコードが追加・変更・削除されたか)をGitHub上で確認し、コメント・承認・修正依頼などを行います。これをコードレビューと呼びます。承認されると、そのブランチが本番ブランチに統合(マージ)されます。
GitHubが使われる場面
エンジニアのコード管理
最も基本的な使い方は、個人のコードのバックアップと版数管理です。
エンジニアが一人でプログラムを開発する場合でも、GitHubを使うことで「以前の状態に戻せる」「別のPCからでも作業を続けられる」「作業の履歴が残る」といったメリットが得られます。
また、GitHubのプロフィールページには各開発者のコントリビューション(貢献活動)が可視化されており、エンジニアの採用選考時にポートフォリオとして活用されることもあります。
チームでの開発
企業やプロジェクトチームがWebサービスやアプリを開発する際に、GitHubはバージョン管理の基盤として使われます。
チームメンバーが同じリポジトリを共有し、それぞれブランチを切って作業し、プルリクエストでレビュー・マージを繰り返すことで、効率的かつ安全にコードを積み上げていけます。変更の競合(コンフリクト)が起きた場合も、Gitの仕組みで解決できます。
オープンソースソフトウェアの公開
GitHubはオープンソースソフトウェア(OSS)の公開・配布・共同開発の場としても重要な役割を担っています。
React(Facebookが開発したUIライブラリ)・Linux・VSCode(Microsoft製エディタ)など、世界中で使われている多くのソフトウェアのソースコードがGitHubで公開されています。誰でもコードを閲覧でき、バグ報告や改善提案(イシュー)、修正コードの提案(プルリクエスト)を通じて世界中の開発者が協力してソフトウェアを改善しています。
まとめ・関連用語
GitHubについて、ポイントを整理します。
- GitHub:コードをクラウドで管理・共有するMicrosoftのサービス
- Git:変更履歴を管理するソフトウェア(GitHubとは別物)
- リポジトリ:プロジェクトのファイルと履歴をまとめた保管場所
- コミット:変更をセーブポイントとして記録する操作
- ブランチ:開発ラインを安全に分岐させる仕組み
- プルリクエスト:変更を本番に取り込んでほしいと申請する仕組み
エンジニアでない方も、GitHubを知っておくことでエンジニアとのコミュニケーションが円滑になります。「リポジトリを見てほしい」「プルリクを出した」といった言葉の意味が理解できれば、開発チームとの連携がよりスムーズになるでしょう。
関連用語: Git / バージョン管理 / CI/CD / マージ / クローン / フォーク / イシュー / コンフリクト

