Git勉強会(2008-10-04)に参加してきました

http://git.or.cz/

猫も杓子も(僕も)気になりまくりのバージョン管理システム「Git」の勉強会に行ってきました。( 主催のkunitさんの告知ページ )

この勉強会ではなんとGit本体のメンテナーであるJunio C Hamano氏(濱野氏)が、3時間に渡ってGitについて講義して頂けるという贅沢すぎる勉強会でした。濱野さんと主催のkunitさん、そして勉強会の会場を提供して頂けたSさんには本当に感謝感謝の大恩礼です。ありがとうございましたおつかれさまでした!

勉強会で使われた資料は http://userweb.kernel.org/~junio/200810-tut.pdf にアップされていますので興味のあるかたはぜひどうぞ。英語ですが単語数は少ないので英語が苦手な人(僕とか)も頑張ってぜひ!

以下勉強会メモ&補足です。

Gitは「ぎっと」です!
「gif」も正しい発音は「ぎふ」ですからね(2008-02-03追記:勉強会の中で、「ジフも英語の発音はギフなんだけど、正しい発音だからといっても日本では定着しなかった」という話をしていました)。gifの方は岐阜と被ってしまうので受け入れられなかったように思いますが、Gitに関しては大丈夫じゃないかと。Gitユーザーは声を大にして広めましょう。ぎっとぎっと!
gitの意味は、どこかの言葉の直訳だと「嫌な奴」
なぜそうなったかは語られなかった(と思う)
Linuxカーネルの開発では、以前はBiTkeeperというバージョン管理システムを使っていた
BitKeeperは有料だけどオープンソースをやっている人は無料。やっぱり有料は諸問題があるので、置き換えの必要に迫られた。SVN,CVSも当然検討されたが、Linuxカーネルの開発においては使い物にならないことは最初からわかっていたとのこと。
Gitで管理されている有名なプロジェクト
Wine, X.org, OLPC. RoR, Samba, VLC
Gitを使う人が爆発的に増えた原因はRubyユーザー
Gitマニュアルを見てもすぐにわからないものです
端からは端まで読んでも身につかない
コマンドが150もあるのはなぜ?
エンドユーザーレベルの操作は少ないが、バックエンドはやることがたくさんある。
それを全てコマンドに分割したら150コマンドになった。
ユーザーが使うのは実は20ぐらい。
ただ、なぜそういうコマンドがあるのか理解しておくことは、Gitの理解に繋がる。
git bisectすごい!
あるバージョンでバグが混入したとき、それまでの歴史の中のどこでバグが混入したかを探すことがあります。その手数をぐっと少なくしてくれるのがgit bisectコマンド。詳しくは濱野さんのプレゼン資料(PDF)を最初に見てからマニュアルを読むと理解できると思います。
CVSのプロトコルをしゃべるGitサーバーのフロントエンドがあるらしい

休憩タイムに図々しくも「コマンドラインになじんでない人のGitの利用状況ってどうなってますか?」と質問させて頂いたところ、なんとCVSプロトコルでGitレポジトリと通信できるようにするサーバーがあるとのこと!具体的に何かは聞かなかったのですが、探してみたところ、多分git-cvsserverのことだと思います。

これでtechyでない方々でもTortoiseCVSやWinCVSを使ってもらって、Gitレポジトリにコミットしてもらえるかも!SVNはWindowsではTortoiseSVNしか選択肢が無いだけに、ひょっとするとSVNよりGit&git-cvsserverのほうがいいかもしれません。CVSからSVNへ置き換えを検討している方は要チェックですよ。

git rebaseで「黒歴史をなかったことに」
git rebaseを使うと、「あるバージョンの恥ずかしいコミット(例えば凡ミス)」をスムーズに無かったことにできるようです。このコマンドが生まれた背景の説明が面白くて、「あたかも自分が完璧なプログラマーであるように見せたい気持ちから生まれたコマンド」ということでしたw(本当か冗談かは想像にお任せします)
gitレポジトリの公開には、gitプロトコルを推奨
httpは遅いから。git daemonを使う。

ちなみにこのメモの10倍ぐらいはボリュームがある勉強会でした。ありがとうございました!

コメント / トラックバック

コメント / トラックバック 3 件

  1. (-_-) より:

    bisectでは

  2. akiyan より:

    type指摘ありがとうございます!修正しました。

  3. juner より:

    ん…gifって「ジフ」じゃないっけ?読み。