複数人で開発している場合に、新しく作成したファイルを svn addし忘れて、Commitもれを発生させてしまうと、 テストが走らなかったり、開発を止めてしまったりと、 様々な悪影響が発生してしまいます。

今回は、Commitもれを防ぐために僕が使ってる方法を紹介します。

やってることは単純で、以下のalias設定を.zshrcに登録しています。

   1  alias svn_new='svn stat | grep "^\?" | sed "s/\? *tmp.*//" | sed "s/\? *log.*//" | grep .'

svn statの結果から、log/とtmp/ディレクトリの中身を除外してるだけですね。 あとは、svn_newコマンドを実行すれば、svn add し忘れてるファイルが無いかどうか簡単に確認できます。

しかし、実際にはconfig/database.ymltagsファイルなど、 svn addする必要が無いファイルがだんだん増えてくるので、 そのような場合には適切にsvn:ignoreプロパティを設定していきます。

僕は、手間を省くために、以下のようなzsh関数を作って使っています。

~/.zshrc

   1  svn_ignore () {
   2    svn pset svn:ignore -F <(echo $1 && svn pget svn:ignore | sed '/^$/d') $2
   3  }

使い方はこんな感じです。

   1  % svn_ignore something_new_file ./

svn:ignoreに設定されたファイルは、svn_newに出てこなくなります。

更新履歴

  • 2007/12/14 CometのやりすぎでComitになっていたのでCommitに訂正。
posted by Png genki on Thu 13 Dec 2007 at 11:41

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry266
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ