プログラミングの学習や開発現場に入ると、必ず耳にする「Git」と「GitHub」という2つの単語。名前が似ているため、「同じものなのか」「何が違うのか」と混同されがちです。
簡潔に言えば、Gitは手元のPC上でファイルの変更履歴を記録・管理する「ツール(仕組み)」であり、GitHubはGitで管理したデータをインターネット上に保存・共有し、チーム開発を円滑にする「Webサービス」です。この記事では、両者の違いと基本的な役割をわかりやすく解説します。
✓
この記事の要点
- 01.[
- 02."Gitは自分のローカルPC上で動作する分散型バージョン管理システム"
- 03."GitHubはGitリポジトリをクラウド上でホスティングし、コード共有やレビュー(Pull Request)を行うWebプラットフォーム",
- 04."現代のソフトウェア開発現場ではGitとGitHubの組み合わせが業界標準のインフラとなっている"
- 05.]
GitとGitHubの役割比較
| 比較項目 | Git(ツール) | GitHub(Webサービス) |
|---|---|---|
| 本質 | バージョン管理を行うコマンドラインツール・プロトコル | GitリポジトリをホストするクラウドWebサービス |
| 動作する場所 | 自分のローカルPC(オフラインでも動作) | クラウドサーバー上(インターネット接続が必要) |
| 主な機能 | ファイルの履歴記録(コミット)、分岐(ブランチ)、統合(マージ) | コード共有、プルリクエスト(コードレビュー)、Issue、Actions(CI/CD) |
| 利用料金 | 完全無料(オープンソース) | 個人利用は基本無料(高機能な組織向け有料プランあり) |
※横スクロールで全体を確認できます
基本的な開発フローと最小コマンド例
開発現場では、手元のGitで変更を記録し、GitHub上のリモートリポジトリにアップロード(プッシュ)する流れが基本です。
bash
1# 1. リポジトリの初期化2git init3 4# 2. 変更ファイルをステージング5git add .6 7# 3. 履歴(コミット)を記録8git commit -m "feat: 初回コードコミット"9 10# 4. GitHub上のリモートリポジトリへ送信11git push origin mainAIを活用した開発ツールについては AIコーディングツールとは?できること・苦手なこと、ツールの選定基準は エンジニア向けAIコーディングツールの選び方 もご覧ください。
よくある質問
- Q.GitHub以外にもGitを使うサービスはありますか?
- A.はい、GitLabやBitbucketなど、同様にGitリポジトリをホスティングしてチーム開発を支援するサービスが複数存在します。
- Q.プルリクエスト(Pull Request)とは何ですか?
- A.自分が作成・修正したブランチのコードをメインブランチに取り込んでもらうよう、チームメンバーにレビューとマージを依頼するGitHubの機能です。
- Q.個人の学習でGitHubを使うメリットは何ですか?
- A.コードのバックアップになるだけでなく、作成したアプリのコードを公開することで転職活動時のポートフォリオとして活用できます。
まとめ
Gitが「履歴を記録するペン」だとすれば、GitHubは「その記録をみんなで持ち寄って議論・保管する図書館」のような関係です。まずはローカルでのGit操作に慣れ、GitHub上で自分のコードを管理してみましょう。