開発初期の歴史とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 開発初期の歴史の意味・解説 

開発初期の歴史

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2017/05/08 07:41 UTC 版)

git」の記事における「開発初期の歴史」の解説

git開発は、Linuxカーネル開発者多くBitKeeperシステム対すアクセス禁止されたことに端を発している(BitKeeper#価格変更参照)。これは、アンドリュー・トリジェル(Andrew Tridgell)がプロプラエタリなソフトウェアであるBitKeeperプロトコルリバースエンジニアリングしたことに対しBitKeeper著作者であるLarry McVoy(en)がこれをライセンス違反であるとして、BitKeeper無料提供を止めたためである。Linux.conf.au 2005キーノートにおいて、Tridgellはこのリバースエンジニアリングの手順について説明行ったが、内容BitKeeperサーバ適切なポートtelnetアクセスし“help”とタイプするだけという単純なのだったリーナスBitKeeper同じよう使える分散型バージョン管理システム探していたが、無料システム彼の要求(特に速度面での要求)に適合するものは見つからなかった。リーナス書いたメールによると、2005年4月7日頃に最初プロトタイプ作成していたようである。 “ だけど、僕が見たSCMたちはそれ(bk pull当のこと)をするのが大変だったんだ。僕がやろうとしていることの1つは(実はこれが一番なんだけど)その過程を十分効率的にすること。もし1つパッチ適用してその変更境界記録するなどするのに30秒かかったとすると(正直、Linux規模プロジェクト30秒っていうのは大抵のSCMでは速いほうの見積りだけど)、250通(例えAndrew同期するときには決して珍しい量じゃない)のメールパッチを適用するのに2時間かかることになる。 BKスピード狂ではなくて、(他のSCM比較するBKは1か2くらいは高速だけど)Andrewマージをする時に1メールにつき約10-15かかっていた。だけど、BKではそれは大きな問題にならなかったんだ。BK<->BK間のマージ簡単だから、僕は他の主要な開発者とは時間がかかるメールでのマージをしたことはなかったから。パッチアプリケーションに基づいたSCMにするなら、“マージ機能”をBKよりも速くなければならなくなる。それは本当に本当に大変なこと。 だから、僕はいまスクリプト書いていて、変更をずっと速く追跡できるようにしているんだ。最初目標パッチ適用するのと同じくらい高速にそれを行うこと。だけどはっきりいって今のところできたのは多く見積もってもまだ半分くらいで、思わぬ障害ぶつかったら全然嘘になるかもしれないけど。いずれにせよ、僕がそれをすぐにできる理由は、僕のスクリプトSCMではないからで、とても特別で“Linuxの状態を記録する”ようなものだからなんだ。それはリニアパッチを十分効率的な時間マージできるようになるだろう。 (パッチ適用が3秒でできるなら、大きな1つながりのパッチでも問題にはならない: 途中で失敗しても1分か2分で気がつくなら、それで十分で、手作業修正することができる。待ち時間重要な理由はそこにある。--“オフライン”で効果的にそれができるなら、問題起きた時に僕は定義どおりそれを修理できずにいるだろう) ” リーナスは以下のような原則基づいて設計行っている。 CVSを「悪い見本」とする。設計上のことで確信持てない場合は、CVSと逆の決断をする。リーナス冗談めかして以下のように語っている。“カーネルメンテナンスの最初の10年間僕らは文字通りtarボールパッチ使っていた。CVSよりもずっと優れたソース管理システムさ。僕は営利企業 (トランスメタ) でCVS7年間使わされたことで、CVS強烈にむようになった。CVS強烈に憎んでいると言う時には、このことも言っておかなくちゃいけないね。観衆中にSVNSubversion)のユーザがいるなら、この場から去ったほうがいいかもしれない。僕がCVS強烈に嫌悪しているということは、僕がSubversion史上最大無意味なプロジェクトであると思っていることも意味しているんだ。Subversionのしばらくのスローガンは‘ちゃんとCVSをやる’とかそんなものだったよね。そんなスローガンから始めたら、どこにも辿りつけないよ。CVSをちゃんとやるなんて不可能なのさ。” 分散型の、BitKeeperのようなワークフローサポートする。“BitKeeperだけが、「まあ使ってもいいかな」と最初に思わせてくれたSCMというわけではないけれど、BitkeeperSCMというものの存在意義と、実際にどう使うことができるのかを教えてくれた。だから、git技術的な観点とかいろんなところでBitkeeperとは随分違うものになっているけど(それはもう一つ設計目標でもある。Bitkeeperクローンではないことをはっきりさせたかったから。)、gitワークフロー多くは、Bitkeeper教えてくれたフローから直接きたものになっているんだ。” データ破壊対す強力な抑止機能データ破壊は、偶然によるもの意図的なものの両方想定している。 非常に高い処理速度最初3つの条件によって既存バージョン管理システムMonotone除き全て選に漏れてしまい、4つ目の条件該当するものがなくなってしまった。そのため、Linuxカーネル2.6.12-rc2のリリース直後に、リーナス自分開発始めたgit開発2005年4月3日開始された。プロジェクトとしてのアナウンス4月6日行われ4月7日にはセルフホスティングされるようになった4月18日には複数ブランチからのマージ最初に行われた4月29日にはリーナス目標としていた処理速度実現された。Linuxのカーネルツリーにパッチ当てるベンチマークで、初期gitでは毎秒6.7個のパッチ処理している。6月6日には、gitによるLinuxカーネル2.6.12のリリースが行われた。 BitKeeperからの影響で、リーナス従来同じようアプローチ意図的に避けており、結果としてgitは非常にユニークな設計になっている技術長けたユーザgit利用できるうになるレベルまではリーナス開発行っており、その後2005年6月26日にはプロジェクトへの主要な貢献であったJunio C Hamanoにメンテナンス引き継がれた。Hamanoは2005年12月21日バージョン1.0リリース行い2009年3月現在も彼がメンテナンス行っている。

※この「開発初期の歴史」の解説は、「git」の解説の一部です。
「開発初期の歴史」を含む「git」の記事については、「git」の概要を参照ください。


開発初期の歴史

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/18 01:06 UTC 版)

Git」の記事における「開発初期の歴史」の解説

Git開発は、Linuxカーネル開発者多くBitKeeperシステム対すアクセス禁止されたことに端を発している(BitKeeper#価格変更参照)。これは、アンドリュー・トリジェル (Andrew Tridgell) がプロプラエタリなソフトウェアであるBitKeeperプロトコルリバースエンジニアリングしたことに対しBitKeeper著作者であるラリー・マクボイがこれをライセンス違反であるとして、BitKeeper無料提供を止めたためである。Linux.conf.au 2005キーノートにおいて、トリジェルはこのリバースエンジニアリングの手順について説明行ったが、内容BitKeeperサーバ適切なポートtelnetアクセスし“help”とタイプするだけという単純なのだったリーナスBitKeeper同じよう使える分散型バージョン管理システム探していたが、無料システム彼の要求(特に速度面での要求)に適合するものは見つからなかった。リーナス書いたメールによると、2005年4月7日頃に最初プロトタイプ作成していたようである。 「 だけど、僕が見たSCMたちはそれ(bk pull当のこと)をするのが大変だったんだ。僕がやろうとしていることの1つは(実はこれが一番なんだけど)その過程を十分効率的にすること。もし1つパッチ適用してその変更境界記録するなどするのに30秒かかったとすると(正直、Linux規模プロジェクト30秒っていうのは大抵のSCMでは速いほうの見積りだけど)、250通(例えAndrew同期するときには決して珍しい量じゃない)のメールパッチを適用するのに2時間かかることになる。 BKスピード狂ではなくて、(他のSCM比較するBKは1か2くらいは高速だけど)Andrewマージをする時に1メールにつき約10-15かかっていた。だけど、BKではそれは大きな問題にならなかったんだ。BKBK間のマージ簡単だから、僕は他の主要な開発者とは時間がかかるメールでのマージをしたことはなかったから。パッチアプリケーションに基づいたSCMにするなら、"マージ機能" をBKよりも速くなければならなくなる。それは本当に本当に大変なこと。 だから、僕はいまスクリプト書いていて、変更をずっと速く追跡できるようにしているんだ。最初目標パッチ適用するのと同じくらい高速にそれを行うこと。だけどはっきりいって今のところできたのは多く見積もってもまだ半分くらいで、思わぬ障害ぶつかったら全然嘘になるかもしれないけど。いずれにせよ、僕がそれをすぐにできる理由は、僕のスクリプトSCMではないからで、とても特別で "Linuxの状態を記録する" ようなものだからなんだ。それはリニアパッチを十分効率的な時間マージできるようになるだろう。 (パッチ適用が3秒でできるなら、大きな1つながりのパッチでも問題にはならない: 途中で失敗しても1分か2分で気がつくなら、それで十分で、手作業修正することができる。待ち時間重要な理由はそこにある。-- "オフライン" で効果的にそれができるなら、問題起きた時に僕は定義どおりそれを修理できずにいるだろう) 」 リーナスは以下のような原則基づいて設計行っている。 CVSを「悪い見本」とする。設計上のことで確信持てない場合は、CVSと逆の決断をする。リーナス冗談めかして以下のように語っている。“カーネルメンテナンスの最初の10年間僕らは文字通りtarボールパッチ使っていた。CVSよりもずっと優れたソース管理システムさ。僕は営利企業トランスメタ)でCVS7年間使わされたことで、CVS強烈にむようになった。CVS強烈に憎んでいると言う時には、このことも言っておかなくちゃいけないね。観衆中にSVN (Subversion) のユーザがいるなら、この場から去ったほうがいいかもしれない。僕がCVS強烈に嫌悪しているということは、僕がSubversion史上最大無意味なプロジェクトであると思っていることも意味しているんだ。Subversionのしばらくのスローガンは‘ちゃんとCVSをやる’とかそんなものだったよね。そんなスローガンから始めたら、どこにも辿りつけないよ。CVSをちゃんとやるなんて不可能なのさ。” 分散型の、BitKeeperのようなワークフローサポートする。“BitKeeperだけが、「まあ使ってもいいかな」と最初に思わせてくれたSCMというわけではないけれど、BitkeeperSCMというものの存在意義と、実際にどう使うことができるのかを教えてくれた。だから、Git技術的な観点とかいろんなところでBitkeeperとは随分違うものになっているけど(それはもう一つ設計目標でもある。Bitkeeperクローンではないことをはっきりさせたかったから)、Gitワークフロー多くは、Bitkeeper教えてくれたフローから直接きたものになっているんだ。” データ破壊対す強力な抑止機能データ破壊は、偶然によるもの意図的なものの両方想定している。 非常に高い処理速度最初3つの条件によって既存バージョン管理システムMonotone除き全て選に漏れてしまい、4つ目の条件該当するものがなくなってしまった。そのため、Linuxカーネル2.6.12-rc2のリリース直後に、リーナス自分開発始めたGit開発2005年4月3日開始された。プロジェクトとしてのアナウンス4月6日行われ4月7日にはセルフホスティングされるようになった4月18日には複数ブランチからのマージ最初に行われた4月29日にはリーナス目標としていた処理速度実現された。Linuxのカーネルツリーにパッチ当てるベンチマークで、初期Gitでは毎秒6.7個のパッチ処理している。6月6日には、GitによるLinuxカーネル2.6.12のリリースが行われた。 BitKeeperからの影響で、リーナス従来同じようアプローチ意図的に避けており、結果としてGitは非常にユニークな設計になっている技術長けたユーザGit利用できるうになるレベルまではリーナス開発行っており、その後2005年6月26日にはプロジェクトへの主要な貢献であった濱野純 (Junio C Hamano) にメンテナンス引き継がれた。濱野2005年12月21日バージョン1.0リリース行い2021年5月現在も彼がメンテナンス行っている。

※この「開発初期の歴史」の解説は、「Git」の解説の一部です。
「開発初期の歴史」を含む「Git」の記事については、「Git」の概要を参照ください。

ウィキペディア小見出し辞書の「開発初期の歴史」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「開発初期の歴史」の関連用語

開発初期の歴史のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



開発初期の歴史のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのgit (改訂履歴)、Git (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS