小学生でもわかる!GitHubってなに?
「GitHub(ギットハブ)」という言葉をよく聞くけど、結局なんなの?という方向けに、できるだけかんたんに説明します。
一言でいうと、GitHubはファイルのセーブデータをインターネット上に保存・管理できるサービスです。
ゲームに「セーブ機能」がありますよね。GitHubはプログラムやファイルに対して、同じようなことができます。
- 「どこを変えたか」が全部記録される
- 「まずかった!」となったら1クリックで前の状態に戻せる
- 複数人で同じファイルを編集できる
これがGitHubのざっくりした正体です。
もっとかんたんに言うと…
こんなイメージで考えてみてください。
あなたが作文を書いているとします。毎日少しずつ書き直しているうちに、「あ、昨日の文章の方がよかったな」と思うことがありますよね。でも普通のメモ帳だと前の版は消えてしまっています。
GitHubは「全バージョンの作文を全部とっておいてくれる引き出し」のようなものです。何回書き直しても、昔の版にいつでも戻れます。
GitHubでできること5つ
① ファイルの変更履歴をすべて記録できる
「いつ・誰が・どこを変えたか」が自動で記録されます。チームで開発しているときに特に便利で、誰かがミスをしても原因をすぐ特定できます。
② いつでも前の状態に戻せる
新しい機能を追加したらサイトが壊れた…というとき、GitHubがあれば壊れる前の状態に1コマンドで戻せます。バックアップとしても優秀です。
③ 複数人で同じプロジェクトを管理できる
チーム開発では「Aさんが作ったファイルとBさんが作ったファイルをうまく合体させる」という作業が必要です。GitHubはそれを自動でやってくれます。
④ 世界中のコードを見たり使ったりできる
GitHubには世界中のエンジニアが作ったコードが公開されています。便利なプログラムを無料で使ったり、参考にしたりできます。
⑤ 自動化の仕組みを作れる(GitHub Actions)
「ファイルを保存したら自動でサーバーに反映する」「テストを自動で実行する」といった自動化ができます。これがGitHub Actionsという機能で、エンジニアの仕事を大幅に効率化してくれます。
GitとGitHubの違いは?
よく混同されますが、別物です。
- Git:変更履歴を管理するための仕組み(ソフトウェア)
- GitHub:Gitで管理したファイルをインターネット上に保存・共有できるサービス(Webサイト)
Gitが「日記帳」だとしたら、GitHubは「日記帳をクラウドに保存してみんなと共有できるアプリ」のイメージです。
GitHubの容量制限
| 項目 | 制限 |
|---|---|
| ファイル1個の上限 | 100MB(超えるとアップロード不可) |
| リポジトリ全体の推奨上限 | 1GB(超えると警告メールが来る) |
| リポジトリ全体の最大 | 5GB |
| 料金 | 無料(容量超過でもお金はかからない) |
WordPressのAll-in-Oneバックアップファイルは数百MB〜数GBになることが多いため、GitHubには向いていません。テキストファイル・CSSファイル・スクリプトなど軽いファイルの管理に使うのがベストです。
| GitHubに向いているもの | GitHubに向いていないもの |
|---|---|
| WordPressのCSS・functions.php | All-in-Oneバックアップファイル |
| Pythonスクリプト・シェルスクリプト | 画像ファイル(大量・高画質) |
| 設定ファイル(.json・.ymlなど) | 動画ファイル |
| メモ・記事ネタ(.mdファイル) | WordPressのメディアフォルダ丸ごと |
GitHubは無料で使える?
はい、基本的に無料で使えます。個人利用の範囲であれば、無料プランで十分です。
- 公開リポジトリ(Public):無料・無制限
- 非公開リポジトリ(Private):無料・無制限
有料プランは大人数のチーム開発や企業向けの機能が必要になった場合に検討すればOKです。
エンジニア以外も使う?
最近はエンジニア以外の人も使うケースが増えています。
- Webディレクターがサイトの設定ファイルを管理する
- ライターが文章のバージョン管理をする
- デザイナーがコードを触る際に使う
「プログラマーだけのツール」という時代はとっくに終わっています。
まとめ
- GitHubはファイルの変更履歴をインターネット上で管理できるサービス
- 「いつでも前に戻せる」「チームで共有できる」「自動化できる」が主な強み
- GitとGitHubは別物。Gitが仕組み、GitHubがサービス
- 基本は無料で使える
次の記事では、実際にGitHubとAWS EC2をSSH接続して、自動デプロイの仕組みを作る手順を解説しています。

