1. タイトル
Git:「有料化にブチ切れた結果、世界標準」
2. イントロ(STAR形式)
2005年、Linux開発の現場が混乱に陥った。
長年使っていたバージョン管理ツール「BitKeeper」の無償提供が、突如打ち切られたのだ。
代替ツールを探しても、CVSもSVNも、どれも遅すぎる。世界最大のオープンソース開発が、たった一夜で道具を失った。
そのとき、リーナス・トーバルズはこう言い放った。
「必要なら、自分で作る」
そして2週間後、誕生したのがGit。
この「怒りの産物」が、15年後には世界中の開発者の共通言語になるなんて、誰が予想しただろう。
3. 歴史年表
年 | 出来事 |
---|---|
2002 | Linuxカーネル開発でBitKeeperを導入 |
2005 | BitKeeper無償提供終了、リーナスがGitを開発 |
2008 | GitHub登場、Gitの普及が加速 |
2010 | GoogleやFacebookなどがGitに移行 |
2015 | Gitが事実上の業界標準に |
2020 | GitHubがMicrosoft傘下に |
2023 | GitHub Copilot登場、AI時代のGit運用へ |
4. 製作者と概略、最初に作られた年
- 製作者:リーナス・トーバルズ
- Linuxカーネルの生みの親。
- 「自分が使いたいツールは自分で作る」という信念で、Gitを生み出した。
- 最初に作られた年:2005年
5. 本文(ストーリー)
■ BitKeeperという「外部依存」
2002年、Linuxカーネル開発はBitKeeperの導入によって飛躍的に効率化された。
分散型の仕組みにより、世界中の開発者が同時に作業しても衝突は最小限。巨大なコードベースを捌くための唯一の武器だった。
しかし、その選択は「外部の商用ツールに依存する」というリスクをはらんでいた。
そして2005年、そのリスクは現実となる。BitKeeperの提供元BitMover社が、無償提供を突如打ち切ったのだ。
理由は、オープンソース開発者によるBitKeeperプロトコルの解析。これに激怒した創業者ラリー・マクヴォイは「無料で使いたければ、プロトコルに触るな」と警告。警告を無視した開発者が出たことで、ラリーは最終的に無償提供を撤回した。
Linuxカーネル開発チームは、一夜にしてツールを失った。
■ 代替ツールを探せ
混乱する開発者たち。
リーナスとチームは、急遽いくつかの候補を検討した。
- CVS:90年代の王者。だが、巨大リポジトリではブランチひとつ作るだけで数分かかる。論外。
- Subversion (SVN):CVSの改良版。中央サーバー依存のため、オフライン作業が不可能。これも使えない。
- Monotone:分散型で理論的には優れていたが、致命的に遅い。Linuxカーネルには耐えられない。
- Bazaar:Ubuntuが推す新興ツール。しかし当時は発展途上で、大規模開発には非現実的。
メーリングリストにはため息交じりの投稿が並んだ。
「SVNはカーネル開発向きじゃない」
「Monotoneは動くけど、遅すぎる」
「パッチメールに逆戻りか…?」
そのとき、リーナスは静かに結論を下した。
■ リーナスの決断
「必要なツールがないなら、自分で作る」
リーナスが掲げた要件は4つ。
- 高速であること
- 分散開発を前提とすること
- 信頼性が高いこと
- オープンソースであること(二度と外部に依存しないため)
こうして、Gitの開発が始まった。
■ 2週間で動くものができた
リーナスは驚異的なスピードでコードを書き上げた。
わずか2週間でプロトタイプが完成。メーリングリストには「ブランチ作成が一瞬」「パッチ適用が爆速」といった報告が次々に投稿され、開発者たちの目が輝いた。
ただし、初期のGitは「優しいツール」ではなかった。
- コマンド体系は複雑
- ドキュメントは最小限
- UIは完全にエンジニア向け
それでも、圧倒的に速い。Linuxカーネル開発者たちは「不便でも速い方がいい」と判断し、次第にGitに移行していった。
同時期に誕生したMercurialも一部で支持されたが、後にGitHubの登場で勝敗は決する。
■ GitHubの登場で「爆発」
2008年、Gitの運命を変える存在が現れる。
GitHubだ。
それまでGitは「プロ級エンジニア向けの難しいツール」だったが、GitHubはそれをSNSのように変えた。
- フォーク:ワンクリックでプロジェクトをコピー
- プルリクエスト:ブラウザ上で提案とレビュー
- スター:承認欲求を満たす「いいね」ボタン
このUI革命によって、GitはLinuxカーネルだけのものではなくなり、個人開発者やスタートアップに一気に広がった。
■ 現代のGit
今やGitはソフトウェア開発の共通言語だ。
Linux、Kubernetes、Chrome、AWSのサービスコードまで、あらゆる開発現場がGitの上で動いている。
そしてGitHubやGitLabとの組み合わせで、CI/CD、レビュー、セキュリティ管理まで含めた「開発のOS」となった。
# 例:Gitの基本操作
git clone https://github.com/torvalds/linux.git
git checkout -b feature-branch
git rebase main
git push origin feature-branch
かつてBitKeeperの喪失に追い込まれたLinuxコミュニティは、今や世界中の開発者に「Git」という武器を提供する側になった。
■ 裏話・トリビア
- Gitの名前の由来:「Git」はイギリス英語で「嫌なやつ」。リーナス曰く「自分にぴったり」
- BitKeeper騒動の後日談:BitKeeperのラリーは後に「リーナスの決断は正しかった」と語った。
- 初期Gitの恐怖:「Gitを覚えるのに数日かかった。だが速すぎてやめられない」と当時の開発者は回顧している。
6. 現代での活用
- GitHub, GitLab, Bitbucket などで標準採用
- CI/CDとの連携(GitHub Actions, GitLab CI)
- AWS CodeCommitもGit互換
- GitHubの公開リポジトリ数は2023年時点で1億超
7. プロの虎の巻
git reflog
:過去のHEAD履歴を全て確認、消えたコミットも蘇生可能git bisect
:バグを埋め込んだコミットを二分探索で特定git config --global alias.co checkout
→git co
でコマンド短縮
8. 結び
Gitは、怒りと必要性から生まれた。
「必要なら自分で作る」というリーナスの哲学は、いまや世界中の開発者の中で息づいている。
そしてその哲学は、BitKeeperに振り回されたあの日の教訓でもある。
One Reply to “Git:「有料化にブチ切れた結果、世界標準」”
Hi, this is a comment.
To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.
Commenter avatars come from Gravatar.