rsync -aC --exclude-from=.rsyncignore
するだけのGruntプラグインをNode.jsパッケージにして、rsync-acという名前で公開しておいた。事実上sync: true
で同期モード(--delete
)を有効にして転送先にしかないファイルを削除することとGruntfile.js
と同じディレクトリにある.rsyncignore
で除外ファイルを指定することしか出来ない。
rsync
のオプションをフルサポートしているものとして既にgrunt-rsyncがあるので、ミラーを主眼においた特化型にした。grunt-rsyncは機能性としては問題なかったけど、設定が煩雑かつ普通のGruntプラグインと似て非なる感じなのが僕には合わなかった。
サブディレクトリだけを対象にするような設定はあっても良さそうだけど、必要になるか付けてって言われるまで作らないことにしよう。