Nice programing

git push heroku master가 "모든 최신 정보"라고 말하지만 앱이 최신 상태가 아닙니다.

nicepro 2021. 1. 9. 11:40
반응형

git push heroku master가 "모든 최신 정보"라고 말하지만 앱이 최신 상태가 아닙니다.


Heroku에 이전 코드를 실행하는 앱이 있습니다. 나는 작은 변화를 만들고 그 변화를 약속했습니다. 나는 그 다음 달렸다

git push heroku master

그것은 말할 것이다

Fetching repository, done.
Everything up-to-date

하지만 내가 가서 앱을 보면 모두 오래된 코드입니다. 약 15 일 전에 Heroku의 다른 버전으로 사이트를 되돌 렸지만 그 이후로 업데이트를 푸시하고 작동했습니다.

Heroku가 내 github 저장소에서 최신 파일을 가져 오지 못하는 이유는 무엇입니까? 앱을 재설정하고 github에서 파일을 다시 푸시하는 방법이 있습니까? 데이터베이스에 프로덕션 데이터가 있으므로 만지고 싶지 않습니다.

미리 감사드립니다 !!


현재 지점이 마스터인지 확인하십시오.

 git branch 

포인터가 마스터를 가리키고 있지 않으면 마스터 브랜치를 확인하십시오.

git checkout master

변경 사항을 커밋하고 heroku로 푸시하십시오.

git commit -am "xxxyyzzz"    
git push heroku master

를 실행할 때 git push heroku mastergit은 마스터에서 푸시하는 것으로 가정하므로 변경 사항이 다른 브랜치에있는 경우 변경없이 마스터 브랜치를 푸시하려고합니다.

두 가지 옵션이 있습니다

1. 변경 사항을 master와 병합하고 푸시합니다.

실제 브랜치에서 변경 사항을 커밋 한 다음 마스터와 병합합니다.

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

나는 당신이 git add .뒤 따르는 것을 잊었을 것입니다 git commit -m 'xyz'.


나는 비슷한 문제가 있었고 결코 내 변경 사항이 heroku에 표시되지 않았습니다. 자신을 재확인하기 위해 나는 heroku에서 클론을 가져 왔고 분명히 최신 상태였습니다.

이 방법을 따르면 문제를 해결할 수 있습니다.

1 단계 : 새 분기 만들기master

git checkout -b new_branch

2 단계 : 파일에 주석을 추가하여 새 커밋을 만든 다음 :

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

3 단계 : 새 분기를 heroku로 푸시합니다.

git push heroku new_branch:master
heroku restart

이제 heroku에서 성공적으로 변경 사항을 볼 수 있습니다.


이것은 오래된 문제이지만 다른 사람이 다음과 같은 문제를 겪을 경우 나에게 효과가있는 내용 (초보자)으로 업데이트하고 싶었습니다.

여기 (Hudson에서 제공) 지침을 따른 후 마침내 "마스터"브랜치를 확인한 후 "git pull"을 수행하는 것이 나에게 트릭을 제공했습니다. 아마도 "git push heroku master"는 master의 로컬 브랜치 만 밀어 낼까요?

물론 이것은 필요한 모든 변경 사항이 마스터에 올바르게 병합되었다고 가정합니다. 모든 병합 (개발에서 마스터까지)이 GitHub에서 처리되고 나중에 개발과 병합 된 새 브랜치에서 작업 중이었기 때문에 프로젝트가 설정된 이후로 로컬의 마스터에서 가져 오지 않았습니다.

따라서 위의 단계를 Hudson에서 다시 설명하려면 다음을 수행하십시오.

git checkout master

git pull

(here, I updated README to have a change to commit, like "Heroku deploy [date, time]"

git add .

git commit -am "xxxyyzzz"

git push heroku master

heroku run rake db:migrate

heroku restart

Good luck!


Try:

heroku status

This returned the following, which confirmed that the problem was with the heroku API (and not with my app!):

"The API is experiencing delays. This may result in delays with adding new domains, new releases, and other such actions. Currently, engineers are investigating the issue."


When this happens, I push previous commit hash to master like this:

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

Then I re-push master like this:

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

I know, I know, silly, but it happened to me so I'm leaving a warning to others: make sure the app you're pushing to is the same app you're checking for changes.

In my case I was pushing to staging and then running a shell on production and not understanding why the static files didn't change.

(It started with a real issue where static files didn't change when I pushed a new version, but it was probably a one-push fluke, and it only kept me going in circles for another hour because I was testing the wrong app.)


If you're using Java, don't forget to rebuild the project before pushing.

In case of Gradle:

gradlew clean install

had the same issue, what worked for me was: make a commit with a random message and then push

git commit -m"random message"

git push heroku master

My executable name had changed but I forgot to change the name in my Procfile. So while all the files were updating correctly in heroku, the same old executable was running. I used heroku local from the command line to help track that issue down.


Same issue, I added a remote to my local repository with the heroku git:remote command and then pushed it.

heroku git:remote -a your-heroku-app

git push heroku master

ReferenceURL : https://stackoverflow.com/questions/21947406/git-push-heroku-master-says-everything-up-to-date-but-the-app-is-not-current

반응형