でも、addには気をつけた方がいい

svn commitに判子とか

今年度は申請書(EXCELシート)書いて上司の判子もらわないと svn commit すらできない職場で仕事することになりました。

まるでギャグなんだが、あながちギャグとも言えないこともある。さすがに判子はやり過ぎだとは思うけど。

あんまりいい経験じゃないし、今さら蒸し返したくないので、細かいことはぼかして。

昔、あるシステムでソースの公開をしていた。cvsに実体を置いて、exportしてアーカイブを作って、それを公開する。cvsをanonymousで公開するのはセキュリティ的に面倒だったので、アーカイブの公開。

当然、cvsの操作なんてのは開発者が勝手にやるもんだと思っていたので、好き勝手にさせていた。必要ならブランチ作ればいいし。

ところが、どんな手順でいつ頃やったかは知らないが、

ヤバいものがadd

されていることに気がついた(当然アーカイブにも含まれている)。「ヤバいもの」の具体的なことについては「お察し下さい」なのだが、とにかく「公開」するのにはふさわしくない内容のものだ。どうやら、作業ディレクトリにあったものをうっかりaddしてしまったらしい。

commitの時のメッセージなんて、普通は「あー、入った入った」以上のことは見てないと思う。細かく気にする人でも、せいぜいファイル名までだ。中身が何であるかなんてのは意識してない。そこに「ヤバいもの」が入っていても、なかなか気がつきにくい。

後始末には結構な手間と精神を使った。

この時以来、

addは1つ1つファイル名を指定する

ということにした。さすがにimportする時はディレクトリごとやるけど、その前には余分なファイルはないか、徹底的にチェックするようにした。

同じことは原理的にはaddでなくても起きる。うっかり「ヤバいもの」を「普段のテストデータ」に上書きしちゃったとか、「ヤバいデータ」をハードコードするボケがいたとか(時々隣の席の奴の個人情報とかをテストコードに入れる人いるよね)。でもまぁ、こっちはわりとやっていることを意識してるから、そうそう大事に至ることはないだろう。でも、addを*でやってしまうとか、一々指定するのが面倒な時にはついやってしまう人もいるんじゃないだろうか。

つーことで、「判子」とか「申請書」は大袈裟だろうけど、addする時だけは、「誰かの承認」みたいな手続きをするくらいの用心はした方がいい。ペアプロの時には隣の奴に確認してもらうとか、そーゆー程度で良いとは思うけど。