1
我遇到了一個奇怪的情況,在Ruby中刪除文件,代碼似乎報告正確,但物理文件沒有從我的硬盤中刪除。我可以在命令行上執行rm path/to/file
- 工作。我甚至可以打通Rails的控制檯和File.safe_unlink文件,並且也適用,它只是在我的Rails應用程序是無法刪除的實際文件:刪除的文件沒有被從硬盤中刪除的紅寶石
def destroy
Rails.logger.debug local_path #=> /Users/ryan/.../public/system/.../file.jpg
Rails.logger.debug File.exist?(local_path) #=> true
File.safe_unlink(local_path)
Rails.logger.debug File.exist?(local_path) #=> false
# yet the physical file actually STILL exists!
end
物理文件是一個Git回購協議中(該回購是存儲在/公共/系統/)任何陷阱與?我已經嘗試使用ruby-git gem使用它提供的rm命令來刪除文件,但是它也不會刪除文件。
我已經在測試過程中打開了文件的所有權限,但仍然沒有任何效果。我也用File.writable?(local_path)證實了這一點,它返回true。
任何想法,爲什麼它可以防止文件被刪除?
好吧,我我想我只是面對自己。我從來不知道這是一個目錄級別的許可,謝謝! – 2010-06-22 20:14:41