「GitHubって何?」「Gitとは違うの?」「どうやって使うの?」
プログラミングを学び始めると必ず出てくるGitHub(ギットハブ)。求人票でも「GitHub経験必須」という記載をよく見かけますよね。
この記事では、GitHubの基本を身近な例えを使いながら、初心者にもわかりやすく解説します。
GitHubとは?一言でいうと「プログラマーのSNS+クラウドストレージ」
GitHubとは、Gitで管理するソースコードを保存・共有できるWebサービスです。
身近な例えで言うと、「プログラマー向けのSNS+クラウドストレージ」です。
Google ドライブやDropboxのように、ファイルをクラウド上に保存して共有できます。それに加えて、TwitterやInstagramのように、他の人の作品(コード)を見たり、フォローしたり、「いいね」(スター)を付けたりできます。
GitとGitHubの違い
前回の記事でも触れましたが、GitとGitHubは別物です。
| 項目 | Git | GitHub |
|---|---|---|
| 種類 | バージョン管理システム(ツール) | Webサービス |
| 動作環境 | ローカルPC | クラウド(Web) |
| 役割 | ファイルの変更履歴を管理 | リモートリポジトリを提供・コード共有 |
| 開発元 | Linus Torvalds | GitHub社(現Microsoft傘下) |
簡単に言うと、Gitで管理したコードを、GitHubで保存・共有するという関係です。
GitHubでできること
GitHubには、コード管理以外にも様々な機能があります。
1. コードの保存・共有
リモートリポジトリとして、ソースコードをクラウド上に保存できます。PCが壊れても、GitHubにコードがあれば安心です。チームメンバーとの共有も簡単です。
2. Pull Request(プルリクエスト)
コードの変更を提案し、レビューを受ける仕組みです。チーム開発では、直接mainブランチにマージするのではなく、Pull Requestを通じてレビューを行うのが一般的です。
3. Issue(イシュー)管理
バグ報告や機能要望などのタスクを管理できます。プロジェクト管理ツールとしても活用できます。
4. GitHub Actions(自動化)
テストやデプロイなどを自動化できるCI/CD機能です。コードをプッシュするたびに、自動でテストを実行するといったことが可能です。
5. GitHub Pages(Webサイト公開)
リポジトリから直接、静的なWebサイトを公開できます。ポートフォリオサイトやドキュメントの公開に便利です。
6. ソーシャル機能
他のユーザーをフォローしたり、リポジトリにスターを付けたり、コードを見つけて学んだりできます。
GitHubの基本用語
GitHubを使うために、基本用語を押さえましょう。
| 用語 | 意味 |
|---|---|
| リポジトリ | プロジェクトの保存場所(Public/Privateを選択可能) |
| フォーク(Fork) | 他人のリポジトリを自分のアカウントにコピー |
| クローン(Clone) | リポジトリをローカルPCにダウンロード |
| Pull Request(PR) | 変更を提案し、マージを依頼する機能 |
| Issue | タスク、バグ、機能要望などを管理する機能 |
| スター(Star) | リポジトリへの「いいね」(ブックマーク) |
| Watch | リポジトリの更新通知を受け取る設定 |
| README | プロジェクトの説明ファイル(.md形式) |
リポジトリの作成方法
GitHubでリポジトリを作成する基本的な流れを紹介します。
- GitHubにログインして、右上の「+」ボタンをクリック
- 「New repository」を選択
- リポジトリ名を入力(例:my-first-project)
- 公開設定を選択(Public or Private)
- README fileを追加するかどうかを選択
- 「Create repository」をクリック
PublicとPrivateの違い
| 設定 | 説明 | 用途 |
|---|---|---|
| Public | 誰でも閲覧可能 | オープンソース、ポートフォリオ |
| Private | 許可された人のみ閲覧可能 | 業務コード、個人プロジェクト |
無料プランでもPrivateリポジトリを無制限に作成できます。
Pull Requestとは
Pull Request(プルリクエスト、PR)は、GitHubの最も重要な機能の一つです。
身近な例えで言うと、「書類の承認フロー」のようなものです。
会社で重要な書類を作成したとき、直接提出するのではなく、上司にチェックしてもらってから提出しますよね。Pull Requestは、コードにおけるその承認フローです。
Pull Requestの流れ
1. ブランチを作成して作業
└─ feature/new-function
2. 変更をコミット・プッシュ
3. Pull Requestを作成
└─ 「この変更をmainにマージしてください」
4. レビュー
└─ チームメンバーがコードをチェック
└─ コメントや修正依頼
5. 承認・マージ
└─ 問題なければmainブランチに統合
Pull Requestでできること
- 差分の確認:どのファイルが、どう変わったかを表示
- コメント:特定の行にコメントを付けられる
- レビュー:Approve(承認)、Request changes(修正依頼)、Comment(コメント)
- CI/CD連携:自動テストの結果を表示
Issueとは
Issue(イシュー)は、タスクやバグ、機能要望などを管理する機能です。
身近な例えで言うと、「付箋(ふせん)メモ」のようなものです。やるべきことを書いて貼っておき、終わったら剥がすイメージです。
Issueの活用方法
- バグ報告:「ログインボタンが押せない」
- 機能要望:「検索機能を追加してほしい」
- タスク管理:「ユーザー認証機能を実装する」
- 質問・議論:「このライブラリの使い方がわからない」
Issueの書き方のコツ
| 項目 | 内容 |
|---|---|
| タイトル | 問題を端的に表す(例:「ログイン画面でエラーが発生する」) |
| 説明 | 詳細な状況、再現手順を記載 |
| ラベル | bug、enhancement、helpなどで分類 |
| 担当者 | 誰が対応するかを割り当て |
| マイルストーン | どのリリースで対応するかを設定 |
GitHub Actionsとは
GitHub Actionsは、ワークフローを自動化するCI/CD機能です。
身近な例えで言うと、「自動ドア」のようなものです。人が近づいたら(コードをプッシュしたら)、自動でドアが開く(テストが実行される)イメージです。
GitHub Actionsでできること
- 自動テスト:プッシュやPR作成時に自動でテストを実行
- 自動デプロイ:mainにマージされたら本番環境にデプロイ
- コード品質チェック:リンターやフォーマッターを自動実行
- 定期実行:毎日決まった時間に処理を実行
ワークフローファイルの例
# .github/workflows/test.yml
name: Run Tests
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm install
- run: npm test
この設定で、mainブランチへのプッシュやPR時に自動でテストが実行されます。
GitHubの料金プラン
GitHubには複数の料金プランがあります。
| プラン | 料金 | 主な特徴 |
|---|---|---|
| Free | 無料 | Publicリポジトリ無制限、Privateリポジトリ無制限 |
| Pro | $4/月 | 高度なコードレビュー、3,000分のActions |
| Team | $4/ユーザー/月 | チーム管理機能、保護ブランチルール |
| Enterprise | $21/ユーザー/月 | 高度なセキュリティ、コンプライアンス機能 |
個人で学習する場合は、Freeプランで十分です。Privateリポジトリも無制限に作成でき、基本的な機能はすべて使えます。
GitHub Copilotとは
GitHub Copilotは、AIがコードを提案してくれるサービスです。
コードを書いていると、AIが続きを予測して提案してくれます。コメントを書くだけで、そのコメントに沿ったコードを生成してくれることもあります。
GitHub Copilotの料金
- Copilot Free:無料(月2,000回のコード補完、50回のチャット)
- Copilot Pro:$10/月(無制限のコード補完・チャット)
- Copilot Pro+:$39/月(高性能モデル、エージェント機能)
学生はGitHub Educationに申請すると、Copilot Proを無料で使えます。
2025年のGitHubトピック
GitHubは日々進化しています。2025年の主なトピックを紹介します。
Copilotコーディングエージェント GA
2025年、Copilotコーディングエージェントが一般提供されました。Issueに「Copilot」を担当者として割り当てるだけで、AIがバックグラウンドで自律的にコーディングを行い、Pull Requestを作成してくれます。
Copilot CLI
2025年9月、Copilot CLIがパブリックプレビューとして公開されました。ターミナルからAIと対話しながら開発を進められるようになりました。
モバイルでのCopilot連携
GitHub Mobileアプリから、Copilotにタスクを依頼できるようになりました。移動中でもAIに作業を任せられます。
複数AIモデルの選択
Copilotで使用するAIモデルを選択できるようになりました。GPT-5.1、Claude、Geminiなど、用途に応じて最適なモデルを選べます。
GitHubを始める手順
GitHubを始める基本的な手順を紹介します。
- GitHubアカウントを作成(github.comにアクセス)
- プロフィールを設定(アイコン、自己紹介など)
- Gitをインストール(まだの場合)
- SSHキーまたはトークンを設定(認証用)
- 最初のリポジトリを作成
- ローカルからプッシュしてみる
最初にやっておきたい設定
# Gitにユーザー名とメールを設定
git config --global user.name "あなたのユーザー名"
git config --global user.email "your.email@example.com"
# デフォルトブランチ名をmainに設定
git config --global init.defaultBranch main
GitHub学習の次のステップ
GitHubの基本を理解したら、以下のステップに進みましょう。
- 自分のプロジェクトをGitHubに公開してみる
- READMEを充実させる(プロジェクトの顔)
- 他の人のリポジトリを見て学ぶ
- Pull Requestの流れを体験(自分のリポジトリでもOK)
- GitHub Actionsで自動化を試す
- OSSにコントリビュート(ドキュメントの修正からでもOK)
まとめ
この記事で解説した内容をまとめます。
| 項目 | ポイント |
|---|---|
| GitHubとは | Gitで管理するコードを保存・共有できるWebサービス |
| 主な機能 | リポジトリ、Pull Request、Issue、Actions、Pages |
| Pull Request | コードの変更を提案し、レビューを受ける仕組み |
| Issue | タスク、バグ、機能要望などを管理 |
| Actions | テストやデプロイなどを自動化するCI/CD機能 |
| 料金 | Freeプランで十分使える(Privateリポジトリも無制限) |
| Copilot | AIがコードを提案してくれるサービス |
GitHubは、現代のソフトウェア開発において欠かせないツールです。ポートフォリオとしても活用でき、転職活動でもGitHubアカウントを見られることがあります。まずはアカウントを作成して、自分のコードを公開してみましょう。
SKサービスでは未経験からのエンジニア転職をサポート
SKサービス株式会社では、完全未経験からエンジニアを目指す方を積極採用しています。
正社員として安定した環境で働きながら、さまざまなプロジェクトで実践経験を積むことができます。受託開発も手掛けており、スキルアップに応じてキャリアの幅を広げていける環境です。
「GitHubを使ったチーム開発を経験したい」「実務でPull Requestを体験したい」という方、まずはお気軽にご相談ください。