Подтвердить что ты не робот

Git push heroku master говорит "Все актуально", но приложение не является текущим

У меня есть приложение на Heroku, на котором запущен старый код. Я сделал небольшое изменение и совершил изменение. Затем я запустил

git push heroku master

Он скажет

Fetching repository, done.
Everything up-to-date

Но если я пойду и посмотрю приложение, это все старый код. Я вернул сайт обратно в другую версию в Heroku около 15 дней назад, но с тех пор обновил его, и они работали.

Почему heroku не получает самые последние файлы из моего репозитория github? Есть ли способ просто reset приложения и снова нажать файлы из github? У меня есть данные о производстве в базе данных, поэтому я НЕ хочу ее трогать.

Спасибо заранее!

4b9b3361

Ответ 1

Подтвердите, что ваша текущая ветка - это мастер.

 git branch 

Если указатель не указывает мастеру, а затем проверьте мастер-ветвь

git checkout master

Зафиксируйте свои изменения и попытайтесь нажать на герою

git commit -am "xxxyyzzz"    
git push heroku master

Ответ 2

Когда вы запустите git push heroku master, git предполагает, что вы нажимаете на главный, поэтому, если вы измените настройки в другой ветке, вы попытаетесь нажать свою ветвь мастера без изменений.

У вас есть две опции

1. Измените свои изменения с помощью мастера и нажмите на них.

Зафиксируйте свои изменения в своей фактической ветке, затем объедините их с мастером

git commit -a - m "your messages"
git checkout master
git merge your_feature_branch
git push heroku master

2.Вставьте свои изменения из вашей фактической ветки

git push heroku your_feature_branch:master

Ответ 3

Я готов поспорить, что вы забыли запустить git add ., а затем git commit -m 'xyz'?

Ответ 4

У меня была аналогичная проблема, и ни в коем случае мои изменения не были видны на героку. Чтобы подтвердить себя, я даже взял клон от героку, и это, очевидно, было актуально.

Я мог бы решить свою проблему только с помощью этого подхода:

Шаг 1: Создайте новую ветку из master

git checkout -b new_branch

Шаг 2: Просто добавьте комментарий в любой файл, чтобы сделать новый коммит, а затем:

git add .
git commit -m "Just a test commit to push new branch to heroku"

Шаг 3: Нажмите новую ветку на герою.

git push heroku new_branch:master
heroku restart

Теперь вы можете успешно увидеть свои изменения на герою.

Ответ 5

Несмотря на то, что это старая проблема, я хотел обновить то, что сработало для меня (новичок), если кто-нибудь еще столкнется с этим:

После выполнения инструкций здесь (от Хадсона), что, наконец, помогло, выполнил "git pull" после проверки ветки "master". Возможно, "git push heroku master" выталкивает только локальную ветвь мастера?

Конечно, это предполагает, что все необходимые изменения были правильно объединены в ваш мастер. Я не вытащил мастер из своего локального, так как проект был создан, потому что все слияния (от разработки до мастера) были обработаны на GitHub, и я работал над новыми веткими, которые позже были объединены с разработкой.

Итак, чтобы повторить шаги выше от Хадсона:

git checkout master

git pull

(здесь я обновил README, чтобы иметь возможность совершить изменение, например "Heroku deploy [date, time]"

git add .

git commit -am "xxxyyzzz"

git push heroku master

heroku run rake db:migrate

heroku restart

Удачи!

Ответ 6

Когда это происходит, я нажимаю на хэш предыдущего коммита так:

git push some-heroku-app-name SOME-COMMIT-HASH:master --force

Затем я снова нажимаю на мастера так:

git push some-heroku-app-name master:master

Ответ 7

Попробуйте:

heroku status

Это вернуло следующее, что подтвердило, что проблема была в API heroku (а не в моем приложении!):

"В API возникают задержки. Это может привести к задержкам с добавлением новых доменов, новых выпусков и других подобных действий. В настоящее время инженеры изучают проблему".

Ответ 8

Я знаю, я знаю, глупо, но это случилось со мной, поэтому я оставляю предупреждение другим: убедитесь, что приложение, на которое вы нажимаете, - это то же приложение, которое вы проверяете на изменения.

В моем случае я нажимал на постановку, а затем запускал оболочку на производстве и не понимал, почему статические файлы не менялись.

(Это началось с реальной проблемы, когда статические файлы не менялись, когда я подталкивал новую версию, но это был, вероятно, однотактный случай, и это только удерживало меня в кругах еще час, потому что я тестировал неправильное приложение.)

Ответ 9

Если вы используете Java, не забудьте перестроить проект до нажатия.

В случае Gradle:

gradlew clean install

Ответ 10

была та же проблема, что для меня работало: сделайте фиксацию со случайным сообщением, а затем нажмите

git commit -m"random message"

git push heroku master

Ответ 11

Мое имя исполняемого файла изменилось, но я забыл изменить имя в моем Procfile. Так что, пока все файлы правильно обновлялись в герою, выполнялся тот же старый исполняемый файл. я использовал heroku local из командной строки, чтобы отслеживать эту проблему.

Ответ 12

В том же выпуске я добавил удаленный доступ к моему локальному репозиторию с помощью команды heroku git: remote и затем нажал его.

heroku git:remote -a your-heroku-app

git push heroku master