S3 syncで特定のフォルダーを除外する

AWS CLIでファイルをS3に保存する際に特定のフォルダーを除外する方法の例です。Git管理下のフォルダーのファイルをsyncで同期する際に.gitを対象から除外するために使っています。

aws s3 sync ./hoge s3://fuga --exclude ".git*" --exact-timestamps --delete

--excludeオプションで除外対象を指定します。

--exact-timestampsオプションは同期するかどうかの判定をファイルサイズだけではなくファイルのタイムスタンプも使うようにするためのオプションです。これをつけないとファイルサイズに変化がない場合に同期されません。

--deleteオプションは削除したファイアルを同期先からも削除するためのオプションです。