2013-04-06 188 views
9

尝试将更改推送到远程存储库时出现以下错误。推送到远程存储库时出现git推送错误

命令

git push heroku

错误

fatal: You are pushing to remote 'heroku', which is not the upstream of your current branch 'master', without telling me what to push to update which remote branch.

任何人都可以请指教一下可能会导致相同的?

回答

17

我怀疑你没有远程配置。

推喜欢知道什么推动和在哪里推它。通常会配置git,以便它自动跟踪分支(本地 - 远程对)。

尝试推送:git push heroku master假设主人是您的本地分支,并且heroku是远程的。

而且,要看到如果没有配置遥控器,(L)北京时间您的配置或(e)编辑它: git config -l/-e

由于菲利克斯在我面前,我会延长我的答案用遥控器设置:

+0

伴侣你是指以下配置? 'branch.master.remote = origin' – misguided 2013-04-06 01:07:07

+0

@Misguided - 你引用的行告诉你分支主人已经远程映射到“origin”。很可能你会看到'remote.origin.url = ...' - 这告诉你在哪里看你的遥控器,最有可能有“heroku”。 我刚刚添加了更详细地解释它的链接。如果您还有其他问题,请告诉我。 – 2013-04-06 01:11:02

7

混帐配置 - 升会告诉你:

[branch.master.remote]和[branch.master.merge]

其实,他们是git的推/拉的默认行为,例如混帐推 = = git push [branch.master.remote] [branch.master.merge]

默认情况下,[branch.master.remote] =原点,[branch.master.merge] =主人,所以在这种情况下GIT中推 = GIT中推原点主

然而,在你的情况,你的起源[branch.master.remote]不是Heroku的,和git不知道的Heroku *你想推的哪个分支,所以你必须指向它的饭桶。

+0

下面是我说的配置'branch.master.remote =原点 branch.master.merge = refs/heads/master' – misguided 2013-04-06 01:43:32

+0

@misguided对,如果你可以使用这个命令:** git branch --upstream heroku/master * *改变branch.master.remote和branch.master.merge,然后你可以使用** git push heroku **或** git push **而不是** git push heroku master **。 – loql 2013-04-06 01:47:53

+0

我得到以下错误'git分支--upstream heroku 错误:未知选项'upstream'' – misguided 2013-04-06 02:08:22

-3

它可能比这更简单,尝试运行heroku登录,如果heroku没有重新配置为一个命令,你简单地没有安装heroku工具栏,如果是这种情况,请按照该网站上的说明https://toolbelt.heroku.com/debian操作系统

+0

没有任何OP是在问什么,他们需要做的就是将'heroku'遥控器添加到他的git repo中。这不需要工具带。 – 2013-09-06 22:04:10