ソーシャル化するOSS開発者たち − @IT
ソーシャル化するOSS開発者たち − @IT
リーナスさんは「Subversion設計者たちは、真性のバカだよ。」と言い放ったらしい。
確かに、CVSやSVNを使っていると面倒な問題がある事は認識している。彼も言うように、特に競合したコードをマージする時だ。競合コードのマージは非常にリスクが高い。下手すると、古いコードも新しいコードも動かなくなる危険性すらある。
そこで彼は「Git」(ギット)という分散ソースコード管理ツールを自ら開発したそうだ。
コードはそれぞれの開発者のPC上で管理される。ある開発者があるコードを実装した段階で「オレのコードは10倍速いぜ」などと宣伝する。すると他の開発者やリリース用のリポジトリ管理者がそのコードを「PULL」する。そういった運用イメージのようだ。
ここで重要なのは、リーナスさんの問題解決に至るアプローチの取り方。彼はコミット権限や競合コードのマージといった問題そのものを無くしてしまう事で問題を解決しようとしたのだ。彼はsubversionを改良するということでは無く、設計思想そのものを変えたのだ。この大胆さ。
使ってみないと本当のところは分からないので、一度Gitを使ってみたいと思う。
リーナスさんは「Subversion設計者たちは、真性のバカだよ。」と言い放ったらしい。
確かに、CVSやSVNを使っていると面倒な問題がある事は認識している。彼も言うように、特に競合したコードをマージする時だ。競合コードのマージは非常にリスクが高い。下手すると、古いコードも新しいコードも動かなくなる危険性すらある。
そこで彼は「Git」(ギット)という分散ソースコード管理ツールを自ら開発したそうだ。
コードはそれぞれの開発者のPC上で管理される。ある開発者があるコードを実装した段階で「オレのコードは10倍速いぜ」などと宣伝する。すると他の開発者やリリース用のリポジトリ管理者がそのコードを「PULL」する。そういった運用イメージのようだ。
ここで重要なのは、リーナスさんの問題解決に至るアプローチの取り方。彼はコミット権限や競合コードのマージといった問題そのものを無くしてしまう事で問題を解決しようとしたのだ。彼はsubversionを改良するということでは無く、設計思想そのものを変えたのだ。この大胆さ。
使ってみないと本当のところは分からないので、一度Gitを使ってみたいと思う。
確かにその考え方は勉強になるね。
返信削除