すでにチェックアウトされているサブバージョン リポジトリを更新して、ローカル ファイルの日付をリポジトリの日付に同期しようとしている場合に備えて、この回答を追加しています。
このトリックを実行するためにこのワンライナーを作成しました(ただし、使用する前に以下の行を読んでください):
svn info --show-item last-changed-date -R | xargs -I{} -P1000 -n1 sh -c 'x="{}"; set -x; exec touch -d "${x%% *}" "${x#* }"'
注:は、の1000の同時コピーを実行し、実際の更新を行うように-P1000
指定します。システムの負荷によっては、これを下げることが賢明な場合があります。小さな i3 ベースの Intel NUC 1000 プロセスでは、80 ~ 95% の CPU を使用して実際に完璧であることが判明しました (100% は通常、CPU が過負荷になっていることを意味します)。不確かな場合は、egを開いて異なる値でテストします。ただし、毎回最初から実行する必要があるため、数秒間だけ実行してください。xargs
sh
touch
htop
USB HDD 上の 3 GB までの小さな SVN リポジトリの場合、実行に約 5 分かかりました。
詳細な実行をオンにします。これset +x
は、実行の直前に行うtouch
ため、実行を確認できます。冗長でない実行が必要な場合は、そのコマンドを削除してください。