代码推送到heroku不工作

我想在gihub上的heroku上推送代码

我使用了以下命令

git push heroku mybranch:master 

错误是

 To https://github.com/user/lyricle-new.git ! [rejected] lyricle-frt-backend -> master (non-fast-forward) error: failed to push some refs to 'https://github.com/user/app.git' hint: Updates were rejected because a pushed branch tip is behind its remote hint: counterpart. Check out this branch and merge the remote changes hint: (eg 'git pull') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. 

使用命令git pull如提示响应Already up-to-date.Already up-to-date.

这个错误背后的原因是什么? 这是推进heroku的正确方法

通过执行git push heroku mybranch:master ,你告诉git带你的本地 mybranch分支并将它与远程 master分支合并(远程存储在你的heroku repo上)。
你得到一个错误,因为master在提交方面领先于mybranch

考虑这个例子:
master: --------b---------m---------
mybranch:........\-c--c--/...........

在某些时候,你将( b )master分支到mybranch,将( c )一些代码提交给分支,并将它( m )合并回master。

现在考虑这个例子:
master: --c-----b---c-----m---c--
mybranch:........\-c--c---/.......

它几乎是相同的场景,但是当你向mybranch提交代码时,有人通过提交其他代码来更新master 。 如果你要将mybranch合并为master ,你可能会在代码和master包含的新代码之间造成冲突,因此Git拒绝进行合并。 首先,您必须使用新版本的master更新本地分支,然后只有Git允许您推送。

简而言之:
git pull heroku master:mybranch
解决潜在的冲突
提交修改过的文件
git push heroku mybranch:master


现在关于Heroku,你应该总是推送这样的代码: git push heroku master (考虑到你在本地的master分支)。 你应该做些什么来避免像git push heroku mybranch:master这样的事情git push heroku mybranch:master是,当你完成分支工作时,总是将你的更改合并到master ,然后(在validation一切正常后)将master推送到heroku。

请参阅此资源以获取您正在寻找的简单git工作流: https ://www.atlassian.com/git/workflows#!workingflow-feature-branch

最终所有东西都集中在master中,然后您可以定期将master推送到heroku(理想情况下,您可以为应用的每个版本推送一次)

从提示中,您似乎没有将最新的更改推送到远程存储库。如果您已完成拉动并再次推送,则可能已删除了本地存储库中未在远程存储库中删除的文件。执行git添加–all然后提交并推送更改。