macOS で wordmove
実行時の「rsync: empty remote host」エラーの対処法
原因
macOS のアップデート等により、以下のような状況が発生していた:
- macOS に標準搭載の
rsync
(openrsync
)は非常に古く、バージョン 2.6.9 相当 wordmove
はこの古いrsync
を利用しようとしてエラーを起こす- Homebrew で新しい
rsync
(3.x系)をインストールしても、パスの優先順位の関係で古い方が呼ばれていた - wordmove -dは問題ないがwordmove -tなどでエラー
解決手順
- Homebrew で最新の
rsync
をインストール
brew install rsync
- Homebrew 版
rsync
をシステムにリンクbrew link rsync
rsync
が正しいパスにあるか確認
which rsync
# => /usr/local/bin/rsync になっていればOK
- バージョン確認(3.x 以上が必要)
rsync --version
# => rsync version 3.x.x
- もしバージョンが変わっていない場合の対処 macOS の標準の古い
rsync
が優先されている可能性があるので、シェルの設定ファイルに以下を追加し、brew
版のパスを優先させる:
# ~/.zshrc もしくは ~/.bash_profile に追記
export PATH="/usr/local/bin:$PATH"
その後、設定を反映させる:
source ~/.zshrc # or source ~/.bash_profile
再度which rsync
とrsync --version
を確認して、/usr/local/bin/rsync
かつ 3.x 以上になっていることを確認。 - Wordmove を再実行
wordmove pull -e production -t
この対応で rsync: empty remote host
問題は解消するはずです 💪