- Git
GitHubとは・使い方|Gitとの違いと最初のプルリクエストまで
結論
GitHub(ギットハブ)は、Git で記録したファイルの変更履歴をインターネット上に置き、複数人で共有・レビュー・自動化するサービスです。Git は手元の PC で動く道具、GitHub はその履歴を預かる場所で、使い始めるのに必要なのは無料のアカウントと Git だけです。
この記事でわかること
- Git と GitHub の違いと、Issue・プルリクエスト・Actions・Pages・Copilot の位置づけ
- アカウント作成から最初のリポジトリ・プルリクエスト・マージまでの画面手順(GitHub Docs の範囲)
- 同じ流れを手元の git で実行した出力(init→commit→branch→merge→push→pull)と、料金・日本語表示・Desktop と gh の使い分け
Git が「手元で履歴を記録する道具」、GitHub が「その履歴を置いて人と共有する場所」です。手元の操作と GitHub 上の操作は、次の図のように対応します。
flowchart TD
W[作業フォルダー<br>手元の PC] -->|git add / commit| R[ローカルリポジトリ<br>Git が履歴を記録]
R -->|git push| H[リモートリポジトリ<br>GitHub が預かる]
H -->|git clone / pull| R
H --> P[プルリクエスト<br>レビュー・マージ]
よく調べられることの答えを先にまとめます。
| 知りたいこと | 答え | 詳しい節 |
|---|---|---|
| GitHubとは | Git の履歴を置いて共有・レビュー・自動化するサービス | GitHubとは |
| Git と GitHub の違い | Git は手元の道具、GitHub はそれを預かる場所 | GitHubとは |
| GitHub の使い方(最初の一歩) | アカウント→リポジトリ→ブランチ→コミット→プルリクエスト→マージ | GitHubの使い方 |
| 無料で使えるか | Free プランで公開・非公開リポジトリとも無制限 | 無料と有料の違い |
| 日本語にできるか | Web の画面は英語。Docs とスマホアプリは日本語あり | GitHubを日本語で使う |
| GitHub Desktop とは | Windows・Mac 用の無料の画面アプリ。コマンド無しで操作できる | Desktop・gh・ブラウザの使い分け |
| プルリクエストとは | 「この変更を取り込んで」と頼み、レビューを受ける仕組み | GitHubの使い方 |
| push が rejected と出た | 先に git pull で相手の変更を取り込む |
よくあるエラー |
確認環境:Ubuntu 24.04.5 LTS の上で git 2.43.0 を使い、作業用のフォルダーの中で git init→add→commit→switch -c→merge→log を実行しました。GitHub への push・リポジトリ作成・プルリクエスト・Issue の作成は行っていません。代わりに、同じフォルダーの中に作った bare リポジトリ(git init --bare)を GitHub の代わりのリモートとして remote add・push・clone・pull・拒否された push を再現しました。GitHub の画面の手順(アカウント作成・リポジトリ作成・ブランチ・コミット・プルリクエスト・マージ・Issue・フォーク・Star)は GitHub Docs 日本語版、料金は GitHub Pricing(2026年10月29日時点)、GitHub Desktop・GitHub Mobile・GitHub Actions・GitHub Pages・2要素認証の説明も GitHub Docs 日本語版で確かめています。公開リポジトリの見え方は github/docs のページを閲覧して確かめました。図は mermaid で描画を確かめています(確認日 2026年10月29日)。
本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。
(記載例)出典:株式会社RJC「GitHubとは・使い方|Gitとの違いと最初のプルリクエストまで」
GitHubとは(Gitとの違いを1分で)
この節では、GitHub が何をするサービスで、Git と何が違うのかが分かります。
GitHub は、Git のリポジトリ(変更履歴つきのフォルダー)をクラウドに置き、チームで共同作業するための機能を足したサービスです。 GitHub Docs は「GitHub は、計画作業からソフトウェアの展開と運用まで、ソフトウェア開発プロセス全体をサポートするプラットフォームです」「Git は、ファイルへの変更を追跡するバージョン管理システムです」と説明し、GitHub は Git を基盤として構築されている、としています。
| Git | GitHub | |
|---|---|---|
| 正体 | 手元の PC に入れるソフト(オープンソース) | Web サービス(運営は GitHub, Inc.。Microsoft 傘下) |
| 役割 | 変更の履歴を記録する(誰が・いつ・何を) | 履歴を預かり、人と共有し、レビュー・自動化する |
| 無くても動くか | GitHub が無くても手元だけで使える | Git(か Git 相当の操作)が無いと履歴を送れない |
| 操作の場所 | ターミナル・エディター・GitHub Desktop | ブラウザ・GitHub Desktop・gh CLI・スマホアプリ |
| 似たサービス | (道具なので無し) | GitLab・Bitbucket・Azure Repos など |
文書にたとえると
「GitHub を使う」とは、ほぼ「Git で記録した履歴を GitHub に送って共有する」こと
「GitHub を覚えたい」と思ったときに、最初につまずくのはこの切り分けです。コマンド(git add・git commit)は Git の操作、プルリクエスト・Issue・Star は GitHub の機能で、ブラウザの画面でしか出てきません。
GitHubでできること(Issue・プルリクエスト・Actions・Pages・Copilotの位置づけ)
この節では、GitHub の主な機能が、開発のどの段階で何をするものかが分かります。
GitHub の機能は「履歴を置く」まわりに、計画・レビュー・自動化・公開・AI 補助が足されたものです。 GitHub Docs は、できることを「計画・作成・レビュー・テスト・展開・運用」の段階で説明しています。
リポジトリ
ファイルと履歴の置き場。公開(Public)か非公開(Private)を選ぶ
Issue
バグ・やること・相談の記録。番号が付き、コミットやプルリクエストから参照できる
プルリクエスト
ブランチの変更を「取り込んで」と頼む。差分の表示・レビューのコメント・マージ
GitHub Actions
push などをきっかけにテスト・ビルド・デプロイを自動で走らせる CI/CD
GitHub Pages
リポジトリの HTML をそのまま Web サイトとして公開(owner.github.io)
GitHub Copilot
エディターやブラウザでコードの補完・会話ができる AI。無料枠あり
Projects・Wiki・Discussions
かんばん形式の管理、説明書、掲示板。チームの大きさに応じて使う
Codespaces・Dependabot
ブラウザで動く開発環境と、依存ライブラリの脆弱性・更新の通知
GitHub Actions について GitHub Docs は「ビルド、テスト、デプロイのパイプラインを自動化できる継続的インテグレーションと継続的デリバリー(CI/CD)のプラットフォームです」と説明し、ワークフロー(.github/workflows の YAML)・イベント・ジョブ・ステップ・ランナーという言葉で構成を示しています。GitHub Pages は「GitHub のリポジトリから直接 Web サイトをホストできる、静的サイトのホスティングサービス」で、ユーザーサイトは https://<owner>.github.io、プロジェクトサイトは https://<owner>.github.io/<リポジトリ名> の形になります。
それぞれの始め方は、関連記事「CI/CDとは|GitHub Actionsで最初のパイプラインを作るまで」と関連記事「GitHub Pagesとは|使い方・公開3通り・独自ドメインと404の直し方」で扱っています。この記事は、その手前の「GitHub そのものの使い方」の入口です。
GitHubの始め方:アカウント作成と2要素認証
この節では、GitHub のアカウントを作るときに入力するものと、作った直後にやっておく設定が分かります。
アカウントは https://github.com/signup から、メールアドレスか Google・Apple のアカウントで作ります。 GitHub Docs「GitHub でのアカウントの作成」は、次の流れを示しています。
サインアップページを開く
https://github.com/signup を開く。メールアドレスで登録するか、「Google で続行」などのソーシャルログインを選ぶ(Google と Apple に対応)。
画面の指示に沿って個人アカウントを作る
ユーザー名はプロフィールの URL(github.com/ユーザー名)になる。後から変えられるが、他の人の参照先が変わるので最初に決めておく。
メールアドレスを確認する
届いたメールで確認を済ませる。GitHub Docs は、確認済みのメールアドレスが無いと、リポジトリの作成など基本的な操作を完了できない、としている。
2要素認証(2FA)を設定する
認証アプリ(TOTP)を主の方法にし、パスキーや GitHub Mobile を予備に足す。GitHub Docs は、2023年3月以降、GitHub.com でコードを投稿するユーザーに 2FA の有効化を求めている、としている。
手元の Git に名前とメールアドレスを設定する
git config --global user.name と user.email を設定する。設定が無いと、手元の commit は「Author identity unknown」で止まる(後述の実物)。
- 会社や学校が用意したアカウント(Enterprise Managed Users)を使う場合は、この手順は要りません。 GitHub Docs は、会社がアカウントを作成している場合は手順をスキップできる、としています。
- 2FA の方法について GitHub Docs は、推奨される主の方法は TOTP アプリ、メールによる確認は 2FA として数えない、としています。
- Git の名前とメールアドレスは、コミットに刻まれて公開リポジトリでは誰でも見られます。公開したくないときは、GitHub が用意する
noreplyのメールアドレス(設定の Emails で表示される)を使います。
GitHubの使い方:最初のリポジトリからプルリクエスト・マージまで(画面の手順)
この節では、GitHub の画面だけで、リポジトリ作成→ブランチ→コミット→プルリクエスト→マージを一周する手順が分かります。
最初の一周は、GitHub Docs の「Hello World」の手順がそのまま使えます。 ブラウザだけで完結し、Git のインストールは要りません。日本語版の表記で手順をまとめます(ボタンの名前は 2026年10月29日時点の Docs の表記)。
手順1:リポジトリを作る
- 画面右上のメニューから「新しいリポジトリ」を選ぶ。
- リポジトリ名に
hello-worldと入力する。 - 説明欄に短い説明を入れる。
- 「パブリック」か「プライベート」を選ぶ。
- 「README ファイルを追加する」にチェックを入れる。
- 「Create repository」をクリックする。
手順2:ブランチを作る
- 「コード」タブを開き、ファイル一覧の上にある「main」のドロップダウンを開く。
- テキスト欄に
readme-editsと入力する。 - 「ブランチを作成:main から readme-edits」をクリックする。
手順3:変更してコミットする
readme-editsブランチでREADME.mdを開き、編集アイコン(鉛筆)をクリックする。- 簡単な自己紹介を書き、「変更をコミットする」をクリックする。
- 「変更のコミット」欄にコミットメッセージを書き、もう一度「変更をコミットする」をクリックする。
手順4:プルリクエストを開く
- 「プルリクエスト」タブ→「新しい pull request」をクリックする。
- 比較する側に
readme-editsを選ぶ(比較元はmain)。差分が表示される。 - 「Pull request の作成」をクリックし、タイトルと説明を書いて、もう一度「Pull request の作成」をクリックする。
手順5:マージする
- プルリクエストの下部にある「Pull request のマージ」→「マージの確認」をクリックする。
- 「ブランチの削除」をクリックする。
- リポジトリの「コード」タブに戻ると、
mainに変更が反映されている。
| 画面の操作 | 起きること | 手元の git では |
|---|---|---|
| Create repository(README あり) | 最初のコミットが1つあるリポジトリができる | git init → git commit |
| ブランチを作成 | main と同じ中身の readme-edits ができる |
git switch -c readme-edits |
| 変更をコミットする | readme-edits にコミットが1つ増える |
git add → git commit |
| Pull request の作成 | 差分とコメント欄ができる(履歴はまだ変わらない) | (対応する操作は無い。GitHub だけの機能) |
| Pull request のマージ | main にマージコミットができる |
git merge --no-ff readme-edits |
| ブランチの削除 | リモートの readme-edits が消える |
git branch -d readme-edits |
プルリクエストだけは、手元の git に対応する操作がありません。プルリクエストは「履歴」ではなく「会話と承認の場」で、GitHub が履歴の上に足した機能です。 次の節で、残りの操作を手元の git で実行して、同じ履歴ができることを確かめます。
手元のGitで同じ流れを実行する(init→commit→branch→merge→log)
この節では、前の節の画面操作と同じことを、手元の git コマンドで行ったときの実際の出力が分かります。
GitHub の画面で起きていることは、手元の git で再現できます。 作業用のフォルダーの中で、git 2.43.0 を使って実行しました(名前とメールアドレスは例です)。
$ git init
Initialized empty Git repository in /srv/s4/r17/t51/hello-world/.git/
$ echo "# hello-world" > README.md
$ git status
On branch main
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
README.md
nothing added to commit but untracked files present (use "git add" to track)
$ git add README.md
$ git commit -m "First commit"
[main (root-commit) 214fc73] First commit
1 file changed, 1 insertion(+)
create mode 100644 README.md
ここまでが「Create repository(README あり)」に当たります。214fc73 がコミットの ID(ハッシュ)で、GitHub の画面のコミット一覧に出る7桁と同じものです。次に、ブランチを作って README を書き換え、コミットします。
$ git switch -c readme-edits
Switched to a new branch 'readme-edits'
$ printf '# hello-world\n\nはじめまして。RJC Taro です。Git と GitHub を学んでいます。\n' > README.md
$ git diff
diff --git a/README.md b/README.md
index 1534e6c..8360e5d 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,3 @@
# hello-world
+
+はじめまして。RJC Taro です。Git と GitHub を学んでいます。
$ git add README.md
$ git commit -m "README に自己紹介を追加"
[readme-edits 9bf1c83] README に自己紹介を追加
1 file changed, 2 insertions(+)
$ git log --oneline --all --graph
* 9bf1c83 README に自己紹介を追加
* 214fc73 First commit
git diff の + の行が、プルリクエストの「Files changed」で緑色に表示される行です。最後に main へ戻してマージし、ブランチを消します。
$ git switch main
Switched to branch 'main'
$ git merge readme-edits
Updating 214fc73..9bf1c83
Fast-forward
README.md | 2 ++
1 file changed, 2 insertions(+)
$ git branch -d readme-edits
Deleted branch readme-edits (was 9bf1c83).
$ git log --stat
commit 9bf1c83a5866077cea264eb280e57680d82dcfc1
Author: RJC Taro <taro@example.com>
Date: Thu Oct 29 22:40:15 2026 +0900
README に自己紹介を追加
README.md | 2 ++
1 file changed, 2 insertions(+)
commit 214fc73adc9d83b6768092377457f1983119f57a
Author: RJC Taro <taro@example.com>
Date: Thu Oct 29 22:40:09 2026 +0900
First commit
README.md | 1 +
1 file changed, 1 insertion(+)
1Fast-forward と GitHub のマージの違い
手元の git merge は、分岐が無ければ main の先頭を進めるだけ(Fast-forward)。GitHub の「Pull request のマージ」の既定はマージコミットを作る(次の節の --no-ff の実物)。
2git log の Author が GitHub の表示になる
Author のメールアドレスが GitHub のアカウントに登録されていると、コミットにアイコンと名前が付く。登録が無いと灰色の名前だけになる。
3画面でやったことは全部ここに残る
GitHub でブラウザから編集したコミットも、clone すれば git log にこの形で出てくる。GitHub は履歴を別の形で持っているわけではない。
コミットの取り消しやコマンドの一覧は、関連記事「git initの使い方|既存フォルダを最初のpushまで進める手順」で扱っています。
GitHubとの往復:remote・push・clone・pullの実物
この節では、手元のリポジトリを GitHub につなぎ、送って(push)、別の PC に取ってきて(clone)、更新を受け取る(pull)流れが、実際の出力で分かります。
この記事では GitHub に書き込みを送らないため、GitHub の代わりに、同じフォルダーの中に空の bare リポジトリを作って「リモート」にしました。 GitHub に対しても、URL が https://github.com/ユーザー名/hello-world.git に変わるだけで、コマンドと出力の形は同じです。
GitHub Docs「ローカルでホストされているコードを GitHub に追加する」は、GitHub 上で README・ライセンス・.gitignore を付けずに空のリポジトリを作り、クイックセットアップ画面に出る URL を git remote add origin に渡して git push -u origin main する、という手順を示しています。まず、リモートを登録せずに push すると、次のように止まります。
$ git push
fatal: No configured push destination.
Either specify the URL from the command-line or configure a remote repository using
git remote add <name> <url>
and then push using the remote name
git push <name>
リモートを登録して push します(GitHub なら URL の部分がクイックセットアップ画面の URL になります)。
$ git init --bare /srv/s4/r17/t51/github-stand-in.git # GitHub の代わり(この記事だけ)
$ git remote add origin /srv/s4/r17/t51/github-stand-in.git
$ git remote -v
origin /srv/s4/r17/t51/github-stand-in.git (fetch)
origin /srv/s4/r17/t51/github-stand-in.git (push)
$ git push -u origin main
To /srv/s4/r17/t51/github-stand-in.git
* [new branch] main -> main
branch 'main' set up to track 'origin/main'.
次に、同僚の PC の役として別のフォルダーに clone し、ブランチを作って push します。GitHub なら、ここで「Compare & pull request」のボタンが出て、プルリクエストを作れる状態です。
$ git clone /srv/s4/r17/t51/github-stand-in.git teammate
Cloning into 'teammate'...
done.
$ cd teammate && git log --oneline
9bf1c83 README に自己紹介を追加
214fc73 First commit
$ git switch -c feature-greeting
$ echo "print('hello GitHub')" > hello.py
$ git add . && git commit -m "挨拶を出すスクリプトを追加"
[feature-greeting 87a3c87] 挨拶を出すスクリプトを追加
1 file changed, 1 insertion(+)
create mode 100644 hello.py
$ git push -u origin feature-greeting
To /srv/s4/r17/t51/github-stand-in.git
* [new branch] feature-greeting -> feature-greeting
branch 'feature-greeting' set up to track 'origin/feature-greeting'.
GitHub の「Pull request のマージ」(既定の「Create a merge commit」)に当たるのが --no-ff のマージです。元のフォルダーで、同僚のブランチを取り込みました。
$ git fetch
From /srv/s4/r17/t51/github-stand-in
* [new branch] feature-greeting -> origin/feature-greeting
$ git merge --no-ff origin/feature-greeting -m "Merge pull request #1 from feature-greeting"
Merge made by the 'ort' strategy.
hello.py | 1 +
1 file changed, 1 insertion(+)
create mode 100644 hello.py
$ git log --oneline --graph
* c963805 Merge pull request #1 from feature-greeting
|\
| * 87a3c87 挨拶を出すスクリプトを追加
|/
* 9bf1c83 README に自己紹介を追加
* 214fc73 First commit
$ git push
To /srv/s4/r17/t51/github-stand-in.git
9bf1c83..c963805 main -> main
この Merge pull request #1 from … という形のコミットは、GitHub でプルリクエストをマージしたときに自動で作られるメッセージと同じ形です。公開リポジトリの履歴に並ぶ「Merge pull request」は、これです。最後に、同僚の側で git pull すると、マージ結果が届きます。
$ git switch main
$ git pull
From /srv/s4/r17/t51/github-stand-in
9bf1c83..c963805 main -> origin/main
Updating 9bf1c83..c963805
Fast-forward
hello.py | 1 +
1 file changed, 1 insertion(+)
create mode 100644 hello.py
| コマンド | 向き | GitHub 側で起きること |
|---|---|---|
git remote add origin URL |
設定だけ | 何も起きない(手元に送り先を覚えさせる) |
git push -u origin main |
手元 → GitHub | リポジトリにファイルと履歴が表示される |
git clone URL |
GitHub → 手元(初回) | 履歴ごと手元にコピーされる。origin が自動で設定される |
git fetch |
GitHub → 手元 | 相手の変更を取ってくるが、手元のブランチは変えない |
git pull |
GitHub → 手元 | fetch して、手元のブランチに取り込む |
git push origin ブランチ名 |
手元 → GitHub | ブランチが現れ、「Compare & pull request」の案内が出る |
GitHub へ push するときの認証(HTTPS のトークンか SSH 鍵)と、Permission denied (publickey) の直し方は、関連記事「SSH鍵の作成とGitHub接続|Permission deniedの対処法」で扱っています。
GitHubの用語早見表(リポジトリ・コミット・ブランチ・プルリクエスト・フォーク)
この節では、GitHub の画面と解説に出てくる言葉の意味が一覧で分かります。
GitHub の画面は英語のままですが、出てくる言葉は20個ほどです。 画面の表記と、意味、対応する git コマンドを並べました。
| 画面の表記 | 読み・意味 | 対応する git コマンド |
|---|---|---|
| Repository(Repo) | リポジトリ。ファイルと履歴の置き場 | git init・git clone |
| Commit | コミット。変更を1つの記録として残す | git commit |
| Branch | ブランチ。履歴の枝。既定は main |
git switch -c・git branch |
| Pull request(PR) | プルリクエスト。取り込みの依頼とレビュー | (無し。GitHub の機能) |
| Merge | マージ。ブランチを統合する | git merge |
| Clone | クローン。リポジトリを手元に複製する | git clone |
| Fork | フォーク。他人のリポジトリを自分のアカウントに複製する | (無し。GitHub の機能) |
| Push・Pull・Fetch | 送る・取り込む・取ってくる | git push・git pull・git fetch |
| Issue | イシュー。課題・やることの記録 | (無し。GitHub の機能) |
| Star・Watch | お気に入り・更新の通知 | (無し。GitHub の機能) |
| origin | リモートに付ける既定の名前 | git remote -v |
| README.md | リポジトリの説明。トップに表示される | (ただのファイル) |
| .gitignore | 履歴に入れないファイルの一覧 | (ただのファイル) |
「対応する git コマンドが無い」ものが、GitHub が Git の上に足した機能です。フォークとクローンの違いについて GitHub Docs は、フォークは GitHub 上で自分のアカウントの下にコピーを作ること、クローンはフォークや元のリポジトリを自分のコンピューターにダウンロードすること、と分けて説明しています。
Issue・フォーク・Starの使い方(GitHub Docsの手順)
この節では、プルリクエスト以外で日常的に使う3つの機能を、GitHub Docs で確かめた画面の手順で示します。
Issue を作る
GitHub Docs「Issue の作成」の手順です。
- リポジトリのページで、リポジトリ名の下にある「Issues」をクリックする。
- 「New issue」をクリックする。テンプレートがあれば種類の横の「作業の開始」、無ければ「空の issue を開く」を選ぶ。
- タイトルと本文を入力する。本文には Markdown が使え、関連する URL を貼ると相互参照になる。
- 権限があれば、担当者・ラベル・マイルストーン・プロジェクトを設定する。
- 「新しい issue の送信」をクリックする。
Issue には #12 のような番号が付き、コミットメッセージやプルリクエストの本文に #12 と書くと、その Issue にリンクされます。Fixes #12 と書いたプルリクエストをマージすると Issue が自動で閉じます。GitHub Docs は、Issue をコメント・コードの行・ディスカッション・プロジェクト・URL のクエリ・gh issue create・Copilot Chat からも作れる、としています。
フォークする
GitHub Docs「リポジトリをフォークする」の手順です。
- リポジトリのページ右上の「フォーク」を選ぶ。
- 「所有者」でフォーク先(自分のアカウントか組織)を選ぶ。
- リポジトリ名(既定は元と同じ)と説明を確認し、必要なら「DEFAULT ブランチのみをコピーする」を選ぶ。
- 「フォークの作成」をクリックする。
フォークは、書き込み権限の無い他人のリポジトリに変更を提案するときに使います。自分のフォークにブランチを作って push し、元のリポジトリに向けてプルリクエストを出す、という流れです。
Star を付ける
リポジトリのページ右上の「Star」を選ぶだけです。GitHub Docs は、Star は後から見つけやすくするための印で、作者への感謝を示す手段でもあり、多くのランキングが Star 数を考慮する、としています。github/docs(GitHub Docs 自体のリポジトリ)を閲覧すると、2026年10月29日時点で Star が 20.8k、フォークが 68.7k と表示されていました。
- 1公開リポジトリのページで最初に見る場所About(1行説明)・README・Star 数・最終コミットの日付・License・Issues の数
- 2使ってよいかはライセンスで決まるLICENSE ファイルが無いコードは、公開されていても自由に使えるとは限らない
- 3質問は Issue より先に既存の Issue を検索is:issue で開いている・閉じたものを両方見る。同じ報告が多いと閉じられる
- 4他人のリポジトリは Fork → ブランチ → PR直接 push はできない。CONTRIBUTING.md があれば先に読む
GitHubの無料と有料の違い(料金は2026年10月29日時点)
この節では、無料でどこまで使えるのか、有料プランで何が増えるのかが分かります。
個人の学習・公開・小さなチームの開発は Free プランで足りることがほとんどです。 GitHub Pricing と GitHub Docs「GitHub のプラン」で確かめた内容を、2026年10月29日時点の値でまとめます(料金は米ドル、最新の値は公式ページで確かめます)。
$0
Free。公開・非公開リポジトリとも無制限
2,000分
Free の GitHub Actions の月の枠(非公開リポジトリ向け)
$4
Team の1人あたり月額(最初の12か月の表示)
$21
Enterprise の1人あたり月額(最初の12か月の表示)
| プラン | 向いている人 | Free との主な違い |
|---|---|---|
| Free(個人・組織) | 学習・個人開発・小さなチーム | 公開・非公開リポジトリ無制限、コラボレーター無制限、Actions 2,000分/月、Packages 500MB、Issues・Projects、Dependabot、公開リポジトリの Pages |
| Pro(個人) | 非公開リポジトリで保護ブランチや必須レビューを使いたい個人 | Actions 3,000分/月、Packages 2GB、非公開リポジトリでの保護ブランチ・Code owners・Wiki・Insights、メールサポート |
| Team(組織) | チームで非公開リポジトリをレビュー運用する会社 | Actions 3,000分/月、Packages 2GB、必須レビュアー・Code Owners・リポジトリルール、非公開の Pages と Wiki、Web サポート |
| Enterprise | SSO・監査・データの所在が要る企業 | SAML SSO・SCIM・監査ログ・Enterprise Managed Users・内部リポジトリ、Actions 50,000分/月、Packages 50GB |
- 公開リポジトリでは GitHub Actions の標準ランナーは無料です。 分数の枠は非公開リポジトリの利用に対するものです(GitHub Docs)。
- GitHub Copilot は別料金で、GitHub Pricing は「無料で始められ、月 2,000 回の補完まで」と案内しています(2026年10月29日時点)。
- Codespaces は Free でも月 120 コア時間まで使え、超えた分はコンピュート $0.18/時間、ストレージ $0.07/GB/月です(GitHub Pricing)。
- 会社の非公開リポジトリに「必ず誰かのレビューを通す」設定(必須レビュアー・保護ブランチ)を入れたいなら、Team 以上が要ります。
GitHubを日本語で使う(画面・Docs・スマホアプリ・ブラウザ翻訳)
この節では、「GitHub 日本語」で調べる人が知りたい、どこまで日本語にできるのかが分かります。
GitHub の Web の画面(github.com)には、2026年10月29日時点で、表示言語を日本語に切り替える設定がありません。 一方で、公式ドキュメント(GitHub Docs)とスマホアプリ(GitHub Mobile)は日本語で使えます。
| 対象 | 日本語 | 方法・出典 |
|---|---|---|
| github.com の画面 | 英語のみ | ブラウザの翻訳機能(Chrome・Edge の「日本語に翻訳」)で画面全体を訳せる。ボタン名が変わるので、手順書と照らすときは英語に戻す |
| GitHub Docs(docs.github.com) | あり | URL の /en/ を /ja/ にするか、ページ上部の言語の切り替えで日本語版を開く |
| GitHub Mobile(iOS・Android) | あり | 端末の言語が日本語なら既定で日本語。対応言語は英語・スペイン語・日本語・ポルトガル語(ブラジル)・簡体字中国語・韓国語・ドイツ語(GitHub Docs) |
| GitHub Desktop | 英語のみ | 公式の日本語表示は無い。ボタンは「Commit to main」「Push origin」など十数語 |
| gh CLI・git コマンド | 英語のみ(git は一部の環境で翻訳あり) | エラー文は英語のまま検索したほうが解決策が見つかる |
| Copilot Chat | 日本語で質問できる | 日本語で聞けば日本語で返る。画面のラベルは英語 |
この記事の画面手順は、GitHub Docs 日本語版の表記(「新しいリポジトリ」「変更をコミットする」「Pull request の作成」)で書いています。実際の画面では英語(New repository・Commit changes・Create pull request)です。ブラウザ翻訳を使うなら、翻訳をオフにして英語のボタン名を一度見ておくと、解説記事との照らし合わせが楽になります。
GitHub Desktop・gh CLI・ブラウザ・gitコマンドの使い分け(判断表)
この節では、GitHub を操作する4つの方法のどれを選べばよいかが分かります。
最初はブラウザと GitHub Desktop、慣れたら git コマンドと gh CLI、という順番で困りません。 GitHub Docs は GitHub Desktop を「GitHub や他の Git ホスティングサービス上のファイルを扱うための、無料のオープンソースアプリケーション」で、Windows と macOS で利用できる、と説明しています。
| 方法 | 向いていること | 向いていないこと |
|---|---|---|
| ブラウザ(github.com) | リポジトリ作成・プルリクエストのレビュー・Issue・設定・1ファイルの小さな修正 | 複数ファイルの編集・コードの実行 |
| GitHub Desktop | 変更を見ながら commit・push・pull。ブランチの切り替え。コマンドを覚える前の段階 | rebase・細かい履歴の操作。Linux(公式は Windows・Mac のみ) |
| git コマンド | すべての履歴操作。自動化。エディターやCIの中 | プルリクエスト・Issue の操作(GitHub 側の機能には届かない) |
| gh CLI | ターミナルからプルリクエスト・Issue・Actions の操作。gh repo create・gh pr create |
Git の履歴操作そのもの(それは git コマンド) |
- 1まずブラウザだけで Hello World を一周するリポジトリ→ブランチ→コミット→プルリクエスト→マージ。Git のインストールは要らない
- 2GitHub Desktop で clone → 編集 → commit → push変更行の選択・差分の表示を画面で見る。GitHub Docs の案内する使い方はこの順
- 3git コマンドで同じことをするDesktop のボタンの裏で何が動いているかが分かる。この記事の実物の出力がその対応
- 4gh CLI でプルリクエスト・Issue をターミナルから
gh pr create・gh issue list。ブラウザを開かずに回せる
GitHub Desktop の使い方は、GitHub Docs が「リポジトリをダウンロードして新しいブランチを作る→エディターで変更する→Desktop に戻って commit・push する」という流れを示しています。gh CLI のコマンドは、関連記事「GitHub CLI(gh)の使い方|逆引きコマンド一覧とjqレシピ」で扱っています。
公開する前に確かめること(Public・Private・機密情報・ライセンス)
この節では、GitHub に置いてはいけないものと、公開・非公開の選び方が分かります。
GitHub に push した履歴は、消しても複製が残り得ます。パスワード・API キー・個人情報は、push する前に止めます。
Public(公開)にするもの
学習の記録・ポートフォリオ・OSS への貢献
GitHub Pages で公開するサイト(Free で使えるのは公開リポジトリ)
LICENSE を置き、使ってよい条件を明示する
Private(非公開)にするもの
会社・顧客のコードと資料(契約で持ち出しが禁じられているものはそもそも置かない)
設定ファイル・環境変数・鍵(非公開でも履歴に入れない)
まだ公開を決めていないもの(後から公開に変えられる)
.env・鍵ファイル・node_modulesは、最初のコミットの前に.gitignoreに書きます。コミットした後に.gitignoreに書いても、履歴からは消えません。- GitHub は、push された内容にトークンの形が含まれると通知する機能(シークレットスキャン)を持っていますが、頼らずに手元で止めます。
- 非公開リポジトリに人を招くときは、Settings の Collaborators で個別に追加します。Free でもコラボレーターの数に上限はありません(GitHub Docs)。
よくあるエラー/つまずき(原文つき)
この節では、GitHub を使い始めた人が最初の週に当たるエラーの原文と、直し方が分かります。
手元で実際に出したものを原文で載せます。
| 原文(先頭の行) | 原因 | 直し方 |
|---|---|---|
fatal: not a git repository (or any of the parent directories): .git |
git 管理されていないフォルダーでコマンドを打った | プロジェクトのフォルダーに cd するか、git init する |
Author identity unknown *** Please tell me who you are. |
名前とメールアドレスが未設定 | git config --global user.name・user.email を設定する |
nothing to commit, working tree clean |
変更が無い(または git add していない) |
git status で赤い行があれば git add する |
fatal: No configured push destination. |
リモート(origin)が未登録 | git remote add origin URL → git push -u origin main |
! [rejected] main -> main (fetch first) |
GitHub 側に自分が持っていないコミットがある | git pull してから git push(下の実物) |
Permission denied (publickey). |
SSH 鍵が GitHub に登録されていない・鍵が違う | 関連記事の SSH 鍵の手順。HTTPS ならトークンを使う |
remote: Support for password authentication was removed |
HTTPS でアカウントのパスワードを使った | Personal access token か gh CLI の gh auth login で認証する |
| プルリクエストに「This branch has conflicts that must be resolved」 | 同じ行を main と自分のブランチの両方で変えた | 手元で main を取り込み、衝突の印を直して push する |
いちばん多い「rejected」の実物です。同僚(teammate 側)が先に main へ push した後で、自分も main へ push しました。
$ git push
To /srv/s4/r17/t51/github-stand-in.git
! [rejected] main -> main (fetch first)
error: failed to push some refs to '/srv/s4/r17/t51/github-stand-in.git'
hint: Updates were rejected because the remote contains work that you do not
hint: have locally. This is usually caused by another repository pushing to
hint: the same ref. If you want to integrate the remote changes, use
hint: 'git pull' before pushing again.
$ git pull --no-rebase
Merge made by the 'ort' strategy.
NOTE.md | 1 +
1 file changed, 1 insertion(+)
create mode 100644 NOTE.md
$ git push
To /srv/s4/r17/t51/github-stand-in.git
f114925..d6bb271 main -> main
$ git log --oneline --graph
* d6bb271 Merge branch 'main' of /srv/s4/r17/t51/github-stand-in
|\
| * f114925 同僚がメモを追加
* | b3be228 自分も README を直した
|/
* c963805 Merge pull request #1 from feature-greeting
hint の行に書かれているとおり、git pull で相手の変更を取り込んでから push すると通りました。git push --force で押し切ると、同僚のコミット(f114925)が GitHub から消えます。 共有しているブランチでは使いません。
チームで「main に直接 push しない・ブランチを切ってプルリクエストで取り込む」と決めておくと、この衝突は各自のブランチの中だけで起きます。その決め方は、関連記事「Gitのブランチ戦略|Git Flow・GitHub Flowの違いと選び方」で扱っています。
よくある質問
Q. GitHub とは何ですか? A. Git で記録したファイルの変更履歴をインターネット上に置き、複数人で共有・レビュー・自動化するサービスです。リポジトリの保管に加え、Issue・プルリクエスト・GitHub Actions・GitHub Pages・Copilot などの機能があります。
Q. Git と GitHub の違いは何ですか? A. Git は手元の PC で動く、履歴を記録するソフトです。GitHub はその履歴を預かって人と共有する Web サービスです。Git は GitHub が無くても使えますが、GitHub は Git(か同等の操作)が無いと履歴を送れません。
Q. GitHub は無料で使えますか? A. Free プランで、公開・非公開リポジトリとも無制限に作れ、コラボレーターの数にも上限がありません。GitHub Actions は非公開リポジトリで月 2,000 分まで無料です(2026年10月29日時点)。
Q. GitHub は日本語で使えますか? A. github.com の画面は英語のみで、日本語に切り替える設定はありません(2026年10月29日時点)。公式ドキュメント(GitHub Docs)とスマホアプリ(GitHub Mobile)は日本語に対応しています。画面はブラウザの翻訳機能で訳せます。
Q. GitHub Desktop と git コマンドはどちらを使えばよいですか? A. 最初は GitHub Desktop で commit・push・pull を画面で見ながら覚え、慣れたら git コマンドに移るのが近道です。Desktop は Windows と Mac 用で、Linux には公式版がありません。
Q. プルリクエストとは何ですか? A. ブランチの変更を「main に取り込んで」と頼む依頼です。差分の表示・レビューのコメント・自動テストの結果が1か所に集まり、承認されたらマージします。git コマンドには対応する操作が無い、GitHub 側の機能です。
Q. リポジトリは Public と Private のどちらにすべきですか? A. 学習記録やポートフォリオは Public、会社や顧客のコードは Private です。Private は後から Public に変えられます。どちらでも、パスワードや API キーは履歴に入れません。
Q. Fork と Clone の違いは何ですか? A. Fork は GitHub 上で他人のリポジトリを自分のアカウントに複製すること、Clone はリポジトリを自分の PC にダウンロードすることです。他人のリポジトリに変更を提案するときは、Fork → Clone → ブランチ → push → プルリクエストの順です。
Q. push が rejected になります。
A. GitHub 側に、自分の手元に無いコミットがある状態です。git pull で取り込んでから git push します。共有しているブランチで --force は使いません。
Q. 2要素認証は必須ですか? A. GitHub Docs は、2023年3月以降、GitHub.com でコードを投稿するユーザーに 2FA の有効化を求めている、としています。対象になると通知が届き、45日の登録期間があります。認証アプリ(TOTP)を主の方法にするのが推奨です。
Q. GitHub にアップロードしたファイルを完全に消せますか? A. ファイルを削除するコミットを足しても、履歴には残ります。履歴から消すには履歴の書き換えが要り、すでに clone した人の手元には残ります。鍵やパスワードを push してしまったときは、消すより先に、その鍵を無効にして作り直します。
Q. GitHub と GitLab・Bitbucket の違いは何ですか? A. いずれも Git リポジトリを預かるサービスで、基本の操作(push・pull・マージリクエスト/プルリクエスト)は共通です。GitHub は利用者と公開リポジトリの数が多く、OSS の多くが置かれています。会社で使うものは会社の指定に従います。
まとめ
- GitHub は、Git で記録した履歴をインターネット上に置き、共有・レビュー・自動化するサービス。Git は手元の道具、GitHub はそれを預かる場所。
- 最初の一周は GitHub Docs の Hello World(リポジトリ→ブランチ→コミット→プルリクエスト→マージ)をブラウザだけで行える。プルリクエストだけが git コマンドに対応の無い GitHub の機能。
- 手元の git で
init→commit→switch -c→merge→logを実行すると、画面でやったことと同じ履歴ができた。GitHub のマージは--no-ff、push の rejected はgit pullで解消した。 - Free で公開・非公開リポジトリとも無制限。Team は $4、Enterprise は $21(1人あたり月額、2026年10月29日時点)。
- github.com の画面は英語のみ。GitHub Docs と GitHub Mobile は日本語あり。最初はブラウザと GitHub Desktop、慣れたら git コマンドと gh CLI。
参考・出典
確認日はいずれも 2026年10月29日です。
- GitHub Docs「GitHub と Git について」:https://docs.github.com/ja/get-started/start-your-journey/about-github-and-git
- GitHub Docs「GitHub でのアカウントの作成」:https://docs.github.com/ja/get-started/start-your-journey/creating-an-account-on-github
- GitHub Docs「Hello World」:https://docs.github.com/ja/get-started/start-your-journey/hello-world
- GitHub Docs「ローカルでホストされているコードを GitHub に追加する」:https://docs.github.com/ja/migrations/importing-source-code/using-the-command-line-to-import-source-code/adding-locally-hosted-code-to-github
- GitHub Docs「Issue の作成」:https://docs.github.com/ja/issues/tracking-your-work-with-issues/using-issues/creating-an-issue
- GitHub Docs「リポジトリをフォークする」:https://docs.github.com/ja/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo
- GitHub Docs「Star を付けてリポジトリを保存する」:https://docs.github.com/ja/get-started/exploring-projects-on-github/saving-repositories-with-stars
- GitHub Docs「GitHub のプラン」:https://docs.github.com/ja/get-started/learning-about-github/githubs-plans
- GitHub「Pricing」:https://github.com/pricing
- GitHub Docs「GitHub Desktop について」:https://docs.github.com/ja/desktop/overview/about-github-desktop
- GitHub Docs「GitHub Mobile」:https://docs.github.com/ja/get-started/using-github/github-mobile
- GitHub Docs「必須の 2 要素認証について」:https://docs.github.com/ja/authentication/securing-your-account-with-two-factor-authentication-2fa/about-mandatory-two-factor-authentication
- GitHub Docs「GitHub Actions を理解する」:https://docs.github.com/ja/actions/get-started/understand-github-actions
- GitHub Docs「GitHub Pages について」:https://docs.github.com/ja/pages/getting-started-with-github-pages/what-is-github-pages
- GitHub「github/docs」(公開リポジトリの表示の確認):https://github.com/github/docs
- Git「git-push Documentation」(Note about fast-forwards):https://git-scm.com/docs/git-push
本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。
(記載例)出典:株式会社RJC「GitHubとは・使い方|Gitとの違いと最初のプルリクエストまで」
株式会社RJC ― SI事業・SES事業・AI駆動開発。RJCは一緒に成長を楽しめる会社です。
WE ARE HIRING
RJCで一緒に開発しながら、
成長を楽しみませんか?
RJCは、Web・モバイル・AIを活用した開発プロジェクトで、テックリードやPM・PMOも活躍するシステム開発会社です。会社を知る、待遇を確かめる、話を聞いてみる。気になるところ見てみてください!
- 127日年間休日
- 12時間平均残業時間
- 毎日ガチャ遊びココロも大切にする福利厚生。アマギフなどの賞品ラインナップ!
ほかにも、チケットレストラン、書籍読み放題、2年ごとの慰労報奨(休暇 or 金一封)、11期連続の黒字決算。