Como verificar se um arquivo existe em Ruby
No projeto Reploy, o SHA1 do último commit repackaged fica guardado em arquivo oculto chamado “.last_repack”. Quando o script é executado pela primeira vez, esse arquivo não existe.
Então se eu tentar simplesmente abrir o arquivo:
# Get the latest sha
last_sha = File::read( '.last_repack' )
Se o arquivo não existir, terei o seguinte erro:
repack.rb:5:in `read': No such file or directory - .last_repack (Errno::ENOENT)
from repack.rb:5
Para resolver isso, usei o seguinte comando no programa:
File.exist?('.last_repack')
Uso o método exist? para verificar se o arquivo existe. O “?” em Ruby indica que o método retornará apenas true ou false.