状況
しばしばこれをやってしまう、そそっかしい私です。
$ git commit -a -m 'version up'
$ git push heroku master
したあとにversion upが足りてないことに気付くw
足りてなかった分を追加し、commitする。
$ git commit -a --amend
そしてデプロイすると、
$ git push heroku master
Fetching repository, done.
To git@heroku.com:myapp.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@heroku.com:myapp.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
non-fast-forwardだと怒られてしまいます。
解決法
herokuにはローカルが反映されていればいい、という立場でやってますので、
$ git push -f heroku master
と-f
を付けて強制的にpushしちゃいます。heroku側のブランチは消し去ります。
そういう立場じゃ無い人は、他の手段を取ってくださいm(_ _)m
参考
git - Cannot push to github - keeps saying need merge - Stack Overflow