混同されがちな2つの言葉
「Git」と「GitHub」は名前が似ているため、初心者はしばしば同じものだと勘違いしてしまいます。しかし、この2つはまったく別の役割を持つものです。
Gitは「仕組み」、GitHubは「その仕組みを使ったサービス」
- Git:自分のパソコンの中で、ファイルの変更履歴を記録するための「仕組み・ソフトウェア」そのもの
- GitHub:そのGitの仕組みを使って記録したデータを、インターネット上に保存し、他の人と共有・共同作業できるようにする「Webサービス」
つまり、Gitという道具を使って作った記録を、GitHubという倉庫にアップロードして、みんなで見られるようにする、という関係性です。
料理に例えると
Gitは「レシピの試行錯誤を、自分のノートに記録していく作業」に近いです。一方GitHubは、そのノートをクラウド上に公開し、他の料理人にも見てもらったり、一緒に改良したりできる「共有キッチン付きの図書館」のようなイメージです。
Gitだけでも、自分のパソコンの中だけで変更履歴を管理することは可能です。しかし、チームで開発したり、自分の作ったコードを世界に公開したりする際には、GitHubのようなサービスが必要になります。
「プルリクエスト」という重要な機能
GitHubを使ったチーム開発でよく登場するのが「プルリクエスト」という機能です。これは、自分が行った変更を、本流のコードに取り込んでもらう前に、他のメンバーに「この変更を確認してください」とお願いする仕組みです。レビューを受けて問題がなければ、正式に取り込まれます。この仕組みがあることで、誰かの変更がいきなり本流に反映され、意図しない不具合が紛れ込むリスクを減らすことができます。
似たようなサービスも存在する
GitHub以外にも、GitLabやBitbucketといった、同じくGitの仕組みを使った類似のサービスがあります。会社やプロジェクトによって、どのサービスを使うかは異なります。
GitHubは「ポートフォリオ」としても活用される
近年では、GitHub上に公開したコードが、就職・転職活動における実績(ポートフォリオ)として扱われることもあります。自分が学習の過程で作ったプログラムを公開しておくことで、企業の採用担当者に、実際のコードを通じて技術力を見てもらう機会にもなります。
初心者が最初に覚えるべき順番
- まずGitの基本的な使い方(変更を記録する、過去に戻す)に慣れる
- その記録をGitHubにアップロードする方法を覚える
- 他の人と共同で作業する方法(プルリクエストなど)を学ぶ
いきなり全部を理解しようとせず、まずは自分のパソコンの中だけでGitを使い、慣れてきたらGitHubとの連携に進む、という順番がおすすめです。
実際にコードを書きながら確認し、初心者がつまずきやすいと感じたポイントを中心にまとめました。
要点を整理すると
「Git=記録する仕組み」「GitHub=それを共有する場所」という役割の違いさえ押さえておけば、この2つの言葉に振り回されることはなくなります。プルリクエストの仕組みや、ポートフォリオとしての活用法もあわせて知っておくと、実際の開発現場のイメージが掴みやすくなります。