GitHubとGitの違いとは?IT初心者向けに仕組み・使い分け・現場での確認方法を解説
結論として、Gitはファイルの変更履歴を管理するための仕組みであり、GitHubはGitで管理したデータをインターネット上で保存・共有するサービスです。
GitとGitHubは一緒に使われることが多いため、同じものだと思われがちです。しかし、役割は異なります。
簡単に表すと、Gitはバージョン管理を行う道具、GitHubはそのデータをチームで共有する場所です。
- GitとGitHubの違いを一覧で確認
- Gitとは
- GitHubとは
- Gitだけでも利用できる
- GitHub以外のサービスもある
- ローカルリポジトリとリモートリポジトリの違い
- GitHubを使った基本的な作業の流れ
- Pull Requestとは
- どのような場面で使われるか
- IT現場でよくあるトラブル例
- 障害発生時の確認する順番
- 原因の切り分け
- コマンドプロンプトやPowerShellで確認する方法
- GUIで確認する方法
- イベントビューアーを確認する場面
- ショートカットキー
- 初心者が混乱しやすいポイント
- 筆者の現場経験
- 上司へ報告するポイント
- エスカレーションするタイミング
- 新人が覚えておくべきポイント
- 関連するIT用語
- よくある質問(FAQ)
- まとめ
GitとGitHubの違いを一覧で確認
| 比較項目 | Git | GitHub |
|---|---|---|
| 種類 | バージョン管理システム | Gitリポジトリのホスティングサービス |
| 主な役割 | 変更履歴を記録・管理する | 履歴を保存・共有・レビューする |
| 提供形態 | PCへインストールして利用 | Webサービスとして利用 |
| インターネット接続 | ローカル作業だけなら不要 | 基本的に必要 |
| 主な操作 | commit、branch、merge | Pull Request、Issue、Actions |
| 代表的な用途 | 変更履歴の管理 | 共同開発、レビュー、課題管理 |
Gitとは
Gitは、ソースコードや設定ファイルなどの変更履歴を管理する分散型バージョン管理システムです。
誰が、いつ、どのファイルを、どのように変更したかを記録できます。
変更前の状態へ戻したり、複数人の作業を統合したりできるため、ソフトウェア開発やインフラ構成管理で利用されています。
Gitでできること
- ファイルの変更履歴を記録する
- 過去の状態へ戻す
- 変更前後の差分を確認する
- ブランチを作成して作業を分ける
- 複数人の変更を統合する
Gitの主な用語
- リポジトリ:ファイルと変更履歴を保存する場所
- コミット:変更内容を履歴として記録する操作
- ブランチ:作業を分岐させる仕組み
- マージ:分岐した変更を統合する操作
- クローン:リポジトリをPCへ複製する操作
- プッシュ:ローカルの変更を共有先へ送る操作
- プル:共有先の変更を取得して反映する操作
GitHubとは
GitHubは、Gitで管理しているリポジトリをインターネット上へ保存し、チームで共有できるサービスです。
Gitのリポジトリを置くだけでなく、コードレビュー、課題管理、自動テスト、ドキュメント共有などの機能も提供しています。
ブラウザーから操作できるため、変更履歴やファイルの内容をWeb画面で確認できます。
GitHubでできること
- Gitリポジトリをオンラインで保存する
- 複数人でソースコードを共有する
- Pull Requestで変更内容をレビューする
- Issueで課題や不具合を管理する
- GitHub Actionsでテストや配布を自動化する
- アクセス権限を設定する
Gitだけでも利用できる
GitはGitHubがなくても利用できます。
自分のPC内にGitリポジトリを作成すれば、インターネットへ接続せずに変更履歴を管理できます。
ただし、チームで共有する場合は、GitHubなどのリモートリポジトリを利用するのが一般的です。
リモートリポジトリとは、ネットワーク上にある共有用のGitリポジトリです。
GitHub以外のサービスもある
Gitの共有先はGitHubだけではありません。
- GitLab
- Bitbucket
- Azure Repos
- 社内に構築したGitサーバー
つまり、Gitは共通の仕組みであり、GitHubはGitを利用できるサービスの一つです。
ローカルリポジトリとリモートリポジトリの違い
| 項目 | ローカルリポジトリ | リモートリポジトリ |
|---|---|---|
| 保存場所 | 自分のPC | GitHubなどのサーバー |
| 主な用途 | 自分の変更を記録する | チームで変更を共有する |
| 代表的な操作 | commit、branch、merge | push、pull、fetch |
コミットは自分のPCへ記録する操作、プッシュはGitHubへ送信する操作です。
初心者は、この2つを同じ操作だと思わないように注意しましょう。
GitHubを使った基本的な作業の流れ
- GitHub上のリポジトリをクローンする
- 作業用ブランチを作成する
- ファイルを編集する
- 変更内容を確認する
- Gitでコミットする
- GitHubへプッシュする
- Pull Requestを作成する
- レビュー後にマージする
Pull Requestとは
Pull Requestとは、自分の変更を別のブランチへ取り込んでもらうための依頼です。一般的には「プルリクエスト」や「PR」と呼ばれます。
変更内容をチームメンバーに確認してもらい、問題がなければマージします。
Git自体にもブランチやマージの機能はありますが、Pull RequestはGitHubが提供する共同作業用の機能です。
どのような場面で使われるか
ソフトウェア開発
プログラムのソースコードをGitで管理し、GitHubで共有します。機能追加や不具合修正ごとにブランチを作成する運用が一般的です。
インフラ設定の管理
サーバー設定、ネットワーク設定、PowerShellスクリプトなどの履歴管理に利用されます。
手順書やドキュメントの管理
Markdown形式の手順書や設計資料をGitHubで管理する現場もあります。
自動テストや自動配布
GitHub Actionsを利用すると、変更をプッシュしたタイミングでテストや配布処理を自動実行できます。
IT現場でよくあるトラブル例
コミットしたのにGitHubへ反映されない
Gitでコミットしただけで、GitHubへプッシュしていない可能性があります。
現在のブランチとプッシュ状況を確認します。
GitHubへプッシュできない
主な原因は次のとおりです。
- アクセス権限がない
- 認証情報が正しくない
- リモート側に新しい変更がある
- プッシュ先のブランチが間違っている
- ブランチ保護ルールで直接プッシュできない
GitHubにはファイルがあるがPCにない
GitHub側の最新変更を取得していない可能性があります。
プルやフェッチを実行し、ローカルとの差分を確認します。
Pull Requestを作成できない
変更をプッシュしていない、比較対象のブランチが間違っている、権限が不足しているなどの原因が考えられます。
障害発生時の確認する順番
- Gitの操作かGitHubの操作かを確認する
- 対象リポジトリを確認する
- 現在のブランチを確認する
- 未コミットの変更がないか確認する
- GitHubへプッシュ済みか確認する
- ネットワークやVPNの接続状態を確認する
- GitHubのアクセス権限と認証状態を確認する
- 表示されたエラーメッセージを確認する
原因の切り分け
| 症状 | 主な確認箇所 |
|---|---|
| ローカルでコミットできない | Git設定、ファイル状態、リポジトリ |
| GitHubへ接続できない | ネットワーク、VPN、認証 |
| プッシュできない | 権限、競合、ブランチ保護 |
| 変更がGitHubに見えない | プッシュ忘れ、ブランチ間違い |
| 自分だけ利用できない | アカウント、権限、PC設定 |
| チーム全員が利用できない | GitHub側またはネットワーク側の障害 |
コマンドプロンプトやPowerShellで確認する方法
現在の状態を確認する
git status
現在のブランチ、変更済みファイル、未追跡ファイルなどを確認できます。
現在のブランチを確認する
git branch –show-current
作業中のブランチ名が表示されます。
リモートリポジトリを確認する
git remote -v
GitHubなどの送信先と取得先URLを確認できます。
コミット履歴を確認する
git log –oneline
コミット履歴を簡潔に表示します。
リモートの更新情報を取得する
git fetch
GitHub側の最新情報を取得します。作業中のファイルへ自動反映はされません。
GitHubへ変更を送信する
git push
ローカルのコミットをリモートリポジトリへ送信します。
GUIで確認する方法
GitHubはブラウザーから次の情報を確認できます。
- リポジトリ内のファイル
- コミット履歴
- ブランチ一覧
- Pull Request
- Issue
- アクセス権限
- 自動処理の実行結果
Windowsでは、Visual Studio Codeなどの開発ツールやGit対応のGUIクライアントからGitを操作することもできます。
GUIを利用している場合でも、トラブル時には対象ブランチ、エラー全文、実行した操作を確認しましょう。
イベントビューアーを確認する場面
コミット忘れ、プッシュ忘れ、ブランチ間違いなどは、通常イベントビューアーには記録されません。
ただし、次のようなWindows側の問題が疑われる場合は確認します。
- Gitクライアントが異常終了する
- 認証や証明書のエラーが発生する
- ネットワークアダプターに異常がある
- ファイルシステムに問題がある
- WindowsキーとRキーを押す
- eventvwr.mscと入力する
- 「Windowsログ」を開く
- 「アプリケーション」と「システム」を確認する
- 障害発生時刻付近のエラーを確認する
ショートカットキー
- Windowsキー+R:「ファイル名を指定して実行」を開く
- Ctrl+C:エラーやURLをコピーする
- Ctrl+F:GitHub画面やログ内を検索する
- Ctrl+Shift+Esc:タスクマネージャーを開く
初心者が混乱しやすいポイント
- GitとGitHubを同じものだと思う
- コミットするとGitHubへ自動反映されると思う
- GitHubがないとGitを使えないと思う
- GitHub上のブランチとローカルブランチを混同する
- Pull RequestをGitの標準機能だと思う
- GitHubのアカウントがあれば、すべてのリポジトリへアクセスできると思う
筆者の現場経験
新人時代、Gitで変更をコミットした後、GitHubにも反映されたと思い込んで作業完了を報告したことがあります。しかし、プッシュしていなかったため、レビュー担当者は変更を確認できませんでした。
また、別のブランチへプッシュしてしまい、Pull Requestに必要な変更が表示されなかったこともあります。
それ以降は、コミット後にプッシュ結果を確認し、GitHub画面で対象ブランチと変更内容を確認してから報告するようにしています。
上司へ報告するポイント
- 対象リポジトリ名
- 現在のブランチ名
- 実施したGit操作
- GitHubへプッシュ済みか
- Pull Requestの有無
- エラーメッセージ全文
- 自分だけか複数人で発生しているか
- 業務への影響範囲
- 実施済みの確認内容
エスカレーションするタイミング
- リポジトリへのアクセス権限がない
- 複数人がGitHubへ接続できない
- ブランチ保護ルールの変更が必要
- 重要な履歴を誤って削除した
- 機密情報を誤ってプッシュした
- 組織やリポジトリの設定変更が必要
パスワード、秘密鍵、アクセストークンなどをGitHubへ誤って登録した場合は、ファイルを削除するだけでは不十分です。履歴に残る可能性があるため、直ちに管理者やセキュリティ担当へ報告し、認証情報を無効化してください。
新人が覚えておくべきポイント
- Gitは変更履歴を管理する仕組み
- GitHubはGitリポジトリを共有するサービス
- GitはGitHubがなくても使える
- コミットとプッシュは別の操作
- 作業前後にリポジトリとブランチを確認する
- GitHubへ反映されたことを画面で確認してから報告する
関連するIT用語
- バージョン管理システム
- リポジトリ
- ローカルリポジトリ
- リモートリポジトリ
- コミット
- プッシュ
- プル
- ブランチ
- マージ
- Pull Request
- GitLab
- CI/CD
よくある質問(FAQ)
GitとGitHubは同じですか?
同じではありません。Gitは変更履歴を管理するシステムで、GitHubはGitリポジトリをオンラインで保存・共有するサービスです。
GitHubがなくてもGitは使えますか?
利用できます。自分のPC内だけでリポジトリを作成し、変更履歴を管理できます。
Gitを使うにはGitHubのアカウントが必要ですか?
ローカルでGitを使うだけなら不要です。GitHub上のリポジトリを利用する場合は、用途や公開範囲に応じてアカウントや権限が必要になります。
コミットしたのにGitHubで見えないのはなぜですか?
プッシュしていない、別のブランチへプッシュした、違うリポジトリで作業しているなどの原因が考えられます。
GitHubとGitLabの違いは何ですか?
どちらもGitリポジトリを保存・共有するサービスです。提供機能や運用方法、料金、社内設置への対応などに違いがあります。
まとめ
Gitはファイルの変更履歴を管理するためのバージョン管理システムであり、GitHubはGitで管理したリポジトリをオンラインで保存・共有するサービスです。
IT初心者は、まず「Gitは道具、GitHubは共有場所」と覚えると理解しやすくなります。
実務では、コミットしただけではGitHubへ反映されない点が重要です。作業後はプッシュを実行し、GitHub画面で対象リポジトリ、ブランチ、変更内容を確認してから完了報告を行いましょう。
