次の構造のサンプル プロジェクトをセットアップします。
Gemfile
Guardfile
これらのファイルの内容は次のとおりです。
# Gemfile
source :rubygems
gem "guard"
gem "guard-shell"
と
# Guardfile
guard 'shell' do
watch(/^test\.txt$/) {|m| `echo #{m.inspect} #{File.mtime(m[0])}` }
end
その後、私は走り続けますguard
。そのファイルに何かをエコーするたびに、guard は変更を 2 回登録します。1 つのシェルで:
$ echo blah >> test.txt
シェル実行中のガード:
> [test.txt] 2012-06-26 00:40:22 +0200
> [test.txt] 2012-06-26 00:40:22 +0200
同じ動作が vim/nano などにも当てはまりますecho blah > test.txt
。
これが発生するのを防ぐ方法、またはこれが予想される動作であるかどうかについて、何か考えはありますか?
編集: github で問題を開きました: https://github.com/guard/guard/issues/297#issuecomment-6586266