サイトアイコン プログラマー(PG)・システムエンジニア(SE)になるための入門講座

GitHubとGitの違いとは?IT初心者向けに仕組み・使い分け・現場での確認方法を解説

GitHubとGitの違いとは?IT初心者向けに仕組み・使い分け・現場での確認方法を解説

結論として、Gitはファイルの変更履歴を管理するための仕組みであり、GitHubはGitで管理したデータをインターネット上で保存・共有するサービスです。

GitとGitHubは一緒に使われることが多いため、同じものだと思われがちです。しかし、役割は異なります。

簡単に表すと、Gitはバージョン管理を行う道具、GitHubはそのデータをチームで共有する場所です。

  1. GitとGitHubの違いを一覧で確認
  2. Gitとは
    1. Gitでできること
    2. Gitの主な用語
  3. GitHubとは
    1. GitHubでできること
  4. Gitだけでも利用できる
  5. GitHub以外のサービスもある
  6. ローカルリポジトリとリモートリポジトリの違い
  7. GitHubを使った基本的な作業の流れ
  8. Pull Requestとは
  9. どのような場面で使われるか
    1. ソフトウェア開発
    2. インフラ設定の管理
    3. 手順書やドキュメントの管理
    4. 自動テストや自動配布
  10. IT現場でよくあるトラブル例
    1. コミットしたのにGitHubへ反映されない
    2. GitHubへプッシュできない
    3. GitHubにはファイルがあるがPCにない
    4. Pull Requestを作成できない
  11. 障害発生時の確認する順番
  12. 原因の切り分け
  13. コマンドプロンプトやPowerShellで確認する方法
    1. 現在の状態を確認する
    2. 現在のブランチを確認する
    3. リモートリポジトリを確認する
    4. コミット履歴を確認する
    5. リモートの更新情報を取得する
    6. GitHubへ変更を送信する
  14. GUIで確認する方法
  15. イベントビューアーを確認する場面
  16. ショートカットキー
  17. 初心者が混乱しやすいポイント
  18. 筆者の現場経験
  19. 上司へ報告するポイント
  20. エスカレーションするタイミング
  21. 新人が覚えておくべきポイント
  22. 関連するIT用語
  23. よくある質問(FAQ)
    1. GitとGitHubは同じですか?
    2. GitHubがなくてもGitは使えますか?
    3. Gitを使うにはGitHubのアカウントが必要ですか?
    4. コミットしたのにGitHubで見えないのはなぜですか?
    5. GitHubとGitLabの違いは何ですか?
  24. まとめ

GitとGitHubの違いを一覧で確認

比較項目 Git GitHub
種類 バージョン管理システム Gitリポジトリのホスティングサービス
主な役割 変更履歴を記録・管理する 履歴を保存・共有・レビューする
提供形態 PCへインストールして利用 Webサービスとして利用
インターネット接続 ローカル作業だけなら不要 基本的に必要
主な操作 commit、branch、merge Pull Request、Issue、Actions
代表的な用途 変更履歴の管理 共同開発、レビュー、課題管理

Gitとは

Gitは、ソースコードや設定ファイルなどの変更履歴を管理する分散型バージョン管理システムです。

誰が、いつ、どのファイルを、どのように変更したかを記録できます。

変更前の状態へ戻したり、複数人の作業を統合したりできるため、ソフトウェア開発やインフラ構成管理で利用されています。

Gitでできること

Gitの主な用語

GitHubとは

GitHubは、Gitで管理しているリポジトリをインターネット上へ保存し、チームで共有できるサービスです。

Gitのリポジトリを置くだけでなく、コードレビュー、課題管理、自動テスト、ドキュメント共有などの機能も提供しています。

ブラウザーから操作できるため、変更履歴やファイルの内容をWeb画面で確認できます。

GitHubでできること

Gitだけでも利用できる

GitはGitHubがなくても利用できます。

自分のPC内にGitリポジトリを作成すれば、インターネットへ接続せずに変更履歴を管理できます。

ただし、チームで共有する場合は、GitHubなどのリモートリポジトリを利用するのが一般的です。

リモートリポジトリとは、ネットワーク上にある共有用のGitリポジトリです。

GitHub以外のサービスもある

Gitの共有先はGitHubだけではありません。

つまり、Gitは共通の仕組みであり、GitHubはGitを利用できるサービスの一つです。

ローカルリポジトリとリモートリポジトリの違い

項目 ローカルリポジトリ リモートリポジトリ
保存場所 自分のPC GitHubなどのサーバー
主な用途 自分の変更を記録する チームで変更を共有する
代表的な操作 commit、branch、merge push、pull、fetch

コミットは自分のPCへ記録する操作、プッシュはGitHubへ送信する操作です。

初心者は、この2つを同じ操作だと思わないように注意しましょう。

GitHubを使った基本的な作業の流れ

  1. GitHub上のリポジトリをクローンする
  2. 作業用ブランチを作成する
  3. ファイルを編集する
  4. 変更内容を確認する
  5. Gitでコミットする
  6. GitHubへプッシュする
  7. Pull Requestを作成する
  8. レビュー後にマージする

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を作成できない

変更をプッシュしていない、比較対象のブランチが間違っている、権限が不足しているなどの原因が考えられます。

障害発生時の確認する順番

  1. Gitの操作かGitHubの操作かを確認する
  2. 対象リポジトリを確認する
  3. 現在のブランチを確認する
  4. 未コミットの変更がないか確認する
  5. GitHubへプッシュ済みか確認する
  6. ネットワークやVPNの接続状態を確認する
  7. GitHubのアクセス権限と認証状態を確認する
  8. 表示されたエラーメッセージを確認する

原因の切り分け

症状 主な確認箇所
ローカルでコミットできない 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はブラウザーから次の情報を確認できます。

Windowsでは、Visual Studio Codeなどの開発ツールやGit対応のGUIクライアントからGitを操作することもできます。

GUIを利用している場合でも、トラブル時には対象ブランチ、エラー全文、実行した操作を確認しましょう。

イベントビューアーを確認する場面

コミット忘れ、プッシュ忘れ、ブランチ間違いなどは、通常イベントビューアーには記録されません。

ただし、次のようなWindows側の問題が疑われる場合は確認します。

  1. WindowsキーとRキーを押す
  2. eventvwr.mscと入力する
  3. 「Windowsログ」を開く
  4. 「アプリケーション」と「システム」を確認する
  5. 障害発生時刻付近のエラーを確認する

ショートカットキー

初心者が混乱しやすいポイント

筆者の現場経験

新人時代、Gitで変更をコミットした後、GitHubにも反映されたと思い込んで作業完了を報告したことがあります。しかし、プッシュしていなかったため、レビュー担当者は変更を確認できませんでした。

また、別のブランチへプッシュしてしまい、Pull Requestに必要な変更が表示されなかったこともあります。

それ以降は、コミット後にプッシュ結果を確認し、GitHub画面で対象ブランチと変更内容を確認してから報告するようにしています。

上司へ報告するポイント

エスカレーションするタイミング

パスワード、秘密鍵、アクセストークンなどをGitHubへ誤って登録した場合は、ファイルを削除するだけでは不十分です。履歴に残る可能性があるため、直ちに管理者やセキュリティ担当へ報告し、認証情報を無効化してください。

新人が覚えておくべきポイント

関連するIT用語

よくある質問(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画面で対象リポジトリ、ブランチ、変更内容を確認してから完了報告を行いましょう。

モバイルバージョンを終了