[ruby-dev:50545] [Ruby trunk Bug#5419] FileUtils.cp_rの:preserveの動作
From:
knu@...
Date:
2018-05-16 09:19:11 UTC
List:
ruby-dev #50545
Issue #5419 has been updated by knu (Akinori MUSHA).
と思ったけどそれはさすがに大丈夫でした。
```
ruby -rfileutils -e 'include FileUtils; mkdir("d1"); touch("d1/a"); chmod(0500, "d1"); cp_r("d1", "d2", preserve: true)'
```
----------------------------------------
Bug #5419: FileUtils.cp_rの:preserveの動作
https://bugs.ruby-lang.org/issues/5419#change-72037
* Author: seki (Masatoshi Seki)
* Status: Closed
* Priority: Normal
* Assignee: seki (Masatoshi Seki)
* Target version:
* ruby -v: ruby 1.9.4dev (2011-09-05 trunk 33195) [x86_64-darwin11.1.0]
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
FileUtils.cp_rで:preserveとtrueに設定してディレクトリをコピーしたときに、
空でないディレクトリの時刻が設定されません。
おそらく、ディレクトリについて ent.copy_metadata した後に、そのディレクトリ以下にファイルが増えるためだと思います。
2パスで処理して、一巡目にコピー、二巡目にent.copy_metadata したら直るような気がしますが、もっとかっこいい方法もありそうです。
--
https://bugs.ruby-lang.org/