Este es un pequeño general que conozco, pero me ha estado molestando muchísimo. He estado trabajando en muchos proyectos de raíles de forma remota con Git y cada vez que hago un git pull
y veo que hay algún tipo de cambio de datos (migración o cambio de schema.rb) hago un rake db:migrate
.¿Por qué cambia schema.rb (a los ojos de Git) cuando ejecuta rake db: migrate?
Generalmente funcionan bien y puedo seguir trabajando. Pero si hace un git pull
y luego git status
, su directorio de trabajo está limpio (obviamente) luego haga un rake db:migrate
(obviamente cuando haya cambios) y otro git status
y de repente su db/schema.rb ha cambiado. He estado haciendo un git checkout
inmediatamente para restablecer a la última versión confirmada del archivo schema.rb, pero ¿por qué debería ser necesario? ¿Qué están haciendo los rieles? ¿Actualizando una marca de tiempo? Parece que no puedo entender cuál es la diferencia, pero ¿tal vez me estoy perdiendo algo?
¿Cuál es la diferencia cuando ejecuta 'git diff db/schema.rb'? –
Gracias por todos los comentarios chicos! Tiene más sentido ahora ... es una molestia menor pero siempre está buscando formas de hacer la vida más fácil. – erskingardner