Você tem acompanhado as mudanças do Edge Rails, e quer testá-las naquele projeto que está começando?
Fácil, é só digitar no terminal:
rails myapp
cd myapp
rake rails:freeze:edge
# e se você for sortudo e tiver o textmate :)
mate myapp
Certo? Não, errado! Infelizmente, estes comandos não atualizam sua app para o Edge (é engraçado, mas estes comandos funcionam em algumas máquinas e na grande maioria não). Como saber se você está rodando o Edge? Verifique a pasta config, tem uma pasta initializers dentro dela? Se estiver rodando o edge tem que ter. Então, o que fazer para rodar o edge rails de verdade?
No Edge de verdade
Você precisa usar o comando rails de dentro do edge para gerar seu novo projeto.
cd ..
ruby myapp/vendor/rails/railties/bin/rails myapp_edgier
# e se você for sortudo e tiver o textmate :)
mate myapp_edgier
Agora verifique a pasta config. Hmm, legal! Aproveite e dê uma olhada na nova estrutura do environment.rb. Observe também que a pasta components não é mais criada.
Ok, agora você já está rodando um projeto no Edge, e resolveu criar mais um projeto. Vamos melhorar um pouco o processo. De volta ao terminal:
cd ~
svn co http://svn.rubyonrails.org/rails/trunk rails_edge
ruby ~/rails_edge/railties/bin/rails my_second_edgier_app
cd my_second_edgier_app/
# Você ainda precisa ter o edge rails dentro de sua aplicação
ln -s ~/rails_edge/ vendor/rails
# e se você for sortudo e tiver o textmate :)
mate .
Dessa maneira, você pode manter várias aplicações rodando o Edge, e atualizar o código em um local apenas. Quando você notar alguma mudança no Edge, rode:
cd ~/rails_edge
svn up
Um pouco de shell script
Vamos criar uma função em shell script para gerar novas aplicações já usando o Edge
mate ~/.bash_profile
Coloque a seguinte função no seu profile:
function edgie() {
ruby ~/rails_edge/railties/bin/rails $1 && cd $1 && ln -s ~/rails/trunk vendor/rails && mate .
}
Atualizando nosso profile:
source ~/.bash_profile
Pronto! Agora você pode rodar:
edgie my_edge_app
Boa diversão com o Edge Rails! :)
Os comentários para estão fechados.