推送到Heroku时无法从远程存储库读取(Rails教程5)



我将第5章版本的Sample_App推送到git,然后当我'git push heroku'时,我得到:

warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:
git config --global push.default matching
To squelch this message and adopt the new behavior now, use:
git config --global push.default simple
See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

!  No such app as sample_app.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

我已经阅读了一些类似的stackoverflow问题,所以我知道看看'git remote -v':

heroku  git@heroku.com:sample_app.git (fetch)
heroku  git@heroku.com:sample_app.git (push)
origin  git@github.com:jeffbenner/sample_app.git (fetch)
origin  git@github.com:jeffbenner/sample_app.git (push)

我已经尝试删除heroku并重新推送-我得到相同的错误信息。

我查看了'git config -l':

user.name=jeffbenner
user.email=xxxxx@gmail.com
alias.co=checkout
push.defaults=simple
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
core.precomposeunicode=false
remote.origin.url=git@github.com:jeffbenner/sample_app.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
remote.heroku.url=git@heroku.com:sample_app.git
remote.heroku.fetch=+refs/heads/*:refs/remotes/heroku/*

我不明白为什么我不能推到Heroku。我已经通过CLI重新登录到我的Github和Heroku账户。

我刚刚遇到了同样的问题。我做了以下操作:

cd .git
vim config

删除所有引用Heroku的行

cd ..
heroku create
git push heroku master

…瞧,它起作用了。

您是否尝试指定要推送的分支?试试git push heroku master。您可以在文档中阅读有关警告的内容。让我知道它是否有效

编辑

我会重新开始,创建一个新的Heroku地址。按顺序执行以下步骤

首先在Gemfile中创建以下组

group :development do
  gem 'sqlite3'
end
group :production do
  gem 'pg'
end

重要的是,确保您在projectroot中,并确保像这样运行bundle install

bundle install --without production

现在git add .,然后git commit -m 'your commit message'

现在从命令行运行heroku login

现在运行heroku create

then git push heroku master

最后heroku open将在浏览器中打开您的应用程序

如果所有这些都不起作用,然后将应用程序移动到一个新的目录,并从git init, git add .git commit -m 'first commit in new location'开始,然后按照上面的步骤从heroku login开始

注意,heroku和github都使用git,但它们是独立的实体。如果您可以将代码推送到github并且在github上看到它,那么您应该能够将代码推送到heroku没有问题。

我不知道为什么,但是在我的本地机器上停止运行foreman允许向heroku master推送…可能是巧合:|

最新更新