Pregunta ¿Por qué Heroku piensa que todo está actualizado cuando no es así?


En Heroku tengo una aplicación de producción y sé que tengo una aplicación de preparación:

$ heroku list
=== My Apps
testivate
testivate-staging

Tengo controles remotos para cada uno:

$ git remote -v
heroku  [email protected]:testivate.git (fetch)
heroku  [email protected]:testivate.git (push)
staging [email protected]:testivate-staging.git (fetch)
staging [email protected]:testivate-staging.git (push)

Unos días más tarde, un despliegue rompió mi aplicación de producción, así que usé heroku rollback, finalmente creé la aplicación de etapas que estoy usando ahora, y empujé mi código a la aplicación de etapas, presumiblemente con git push staging master. (Esto fue hace unos días, pero estoy bastante seguro de que eso es lo que hice).

Todo está funcionando ahora en mi aplicación de etapas, así que estoy tratando de llevar mi código a mi aplicación de producción.

Sin embargo, Heroku sigue diciéndome que mi aplicación de producción ya está actualizada:

$ git branch
* master

$ git status
# On branch master
nothing to commit (working directory clean)

$ git add .
$ git add -u
$ git commit -m "trying to commit"
# On branch master
nothing to commit (working directory clean)

$ git push heroku master
Everything up-to-date

$ git remote show staging
* remote staging
  Fetch URL: [email protected]:testivate-staging.git
  Push  URL: [email protected]:testivate-staging.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (up to date)

$ git remote show heroku
* remote heroku
  Fetch URL: [email protected]:testivate.git
  Push  URL: [email protected]:testivate.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (up to date)

Sé que Heroku está equivocado, sin embargo, porque hay algunos cambios claros en mis puntos de vista que puedes ver en mi código local y en el servidor de transición, pero no en mi aplicación de producción en vivo.

Por ejemplo, compare el enlace "atrás" que es correcto aquí en mi aplicación de escenificación, pero no aquí en mi aplicación de producción.

¿Cómo hago para que Heroku actualice mi aplicación de producción como yo quiera?

Gracias,

Steven.


8
2017-11-26 22:32


origen


Respuestas:


¿Estás seguro de que te estás refiriendo a la rama correcta? Aquí está la sintaxis del comando real:

git push heroku <the branch you wish to push>:<the branch on the heroku server you wish to push to>

Entonces, si estás acostumbrado a correr

git push heroku master

y pagas y te comprometes con una sucursal que no sea maestra, corriendo git push heroku master empujará tu sin cambios dominar rama. En cambio, ejecuta

git push heroku the_branch_i_changed:master

16
2018-03-09 23:18



Así es como cometí un error diferente con el mismo resultado (Ruby on Rails específico):

Mi sitio local muestra mi nueva imagen de logotipo, el sitio heroku muestra la imagen del logotipo anterior. A pesar de esto, seguí viendo el mensaje: "nada que confirmar (directorio de trabajo limpio)".

Me olvidé de recompilar los activos antes de presionar:

rake assets:precompile

¡Espero que le ahorre a alguien más el tiempo que desperdicié!


0
2018-05-23 00:50