【完全理解】Gitとは?①バージョン管理システムを理解する
☁️ はじめに
前回の記事では、Gitがどんなツールなのかを大まかに紹介しました。
しかし「Gitとは分散型バージョン管理システムです」と聞いても、
そもそも"バージョン管理システム"って何? と感じた方も多いかもしれません。
そこで今回は、Gitを理解する土台となる
「バージョン」 や 「バージョン管理」 という考え方から整理していきます。
前回の記事はこちら:
💡 「バージョン」という概念を理解する
Gitを理解するうえで欠かせないのが、「バージョン」 という概念です。
たとえば、Wordで「企画書」を作っているとします。
最初は"下書き"を作り、次に清書し、最後に修正を加えて完成させる──。
この過程で、同じファイルでも中身はどんどん変化していきます。
企画書.docx(下書き)
↓
企画書.docx(清書)
↓
企画書.docx(修正版)
このように、更新のたびに変化していくファイルの「状態」 を 「バージョン」 と呼びます。
🧭 バージョン管理とは?
では「バージョン管理」とは何か?
同じファイルの複数バージョンを保持することを「バージョン管理」 と呼びます。

⚙️ Gitはバージョン管理を行うツール
Gitは、この 「バージョン管理」を効率よく行うためのツール です。
ファイルの変更をバージョンとして記録し、過去の状態へいつでも戻れる仕組みを持っています。
こうしたツールはGit以外にも存在し、まとめて 「バージョン管理システム」 と呼ばれます。
🪄 バージョン管理システムが必要とされる理由
企画書の例のように、ファイルをコピーして残していく"手動のバージョン管理"方法もあります。
main.py
main_修正版.py
main_最終版.py
main_再最終版.py
しかしこの方法には、いくつかの問題があります。
- コピーのたびにファイルが増えて管理が煩雑になる
- どれが最新か・どこが違うのか分かりにくい
- 複数人で作業すると、上書きや衝突が起きやすい
一方、Gitのようなバージョン管理システムを使えば、
- 変更ごとに履歴を記録
- 誰が・いつ・何を変更したか追跡できる
- 複数人でも安全に並行で作業ができる
といったメリットがあります。
🧠 Gitの歴史
Gitの歴史について少し触れておきます。
Gitは2005年、Linuxの開発者リーナス・トーバルズ氏によって誕生しました。
当時は、大規模プロジェクトを管理するのに適したツールがなく、
「高速で」「安全で」「複数人でも混乱しない」ようなシステムが求められていました。
こういった経緯から、
「大規模プロジェクトでも高速に、複数の開発者が同時に作業しても整合性を保てる仕組み」
としてGitが開発されたのです。
Git誕生話について:
🌐 GitとGitHubの関係
GitとGitHub。最初はよく混合されがちです。
実は、Gitが広く普及したきっかけの一つが Githubでした。
GiHubは、「Gitの仕組みを利用して、インターネット上での共同作業を可能にしたWebサービス」 です。
他のユーザーと簡単にコミュニケーションが取ったり、コードレビューやプロジェクト管理を行ったりできる機能を備えています。
こうしたGitHubの普及により、Gitは一気にシェアを拡大し、現在では開発現場の標準ツールとして広く利用されています。
✅まとめ
今回は、「バージョン」 と 「バージョン管理システム」 の基本的な概念を学びました。
- ファイルの状態は更新ごとに「バージョン」と呼ばれる
- その複数のバージョンを保持することが「バージョン管理」
| 用語 | 意味 |
|---|---|
| バージョン | 更新ごとに変化するファイルの状態 |
| バージョン管理 | 同じファイルの複数バージョンを保持すること |
| Git | ファイルの変更履歴を記録・管理するツール |
| GitHub | Gitを使ったオンライン共有サービス |
次回の記事では、この「バージョン管理システム」が実際にどのように動くのか、その仕組みを深りしていきます。👇
Discussion