'heroku'似乎不是一个git存储库

时间:2013-08-23 15:36:48

标签: heroku ssh

当我尝试将我的应用程序推送到Heroku时,我得到了回复:

fatal: 'heroku' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我尝试了'heroku键:添加',但仍然会得到相同的结果。 我的GitHub帐户已经有一个ssh密钥。

23 个答案:

答案 0 :(得分:337)

要将Heroku应用程序添加为Git远程,您需要执行heroku git:remote -a yourapp

来源:Deploying with Git

答案 1 :(得分:41)

您可以在根目录中尝试以下操作:

//为项目初始化git,添加更改并执行提交

git init
git add .
git commit -m "first commit"

//创建heroku app并推送到heroku

heroku create
git push heroku master

不确定您在此过程中的位置。你也不需要github在heroku上部署,只需要git。希望这有帮助!

答案 2 :(得分:23)

首先,请确保您已登录heroku:

heroku login 

输入您的凭据。

在新计算机上使用克隆的git repo时出现此错误很常见。即使你的heroku凭证已经在机器上,克隆的repo和heroku之间也没有链接。为此,请进入克隆仓库的根目录并运行

heroku git:remote -a yourapp

答案 3 :(得分:6)

请按照以下步骤操作:

$ heroku login

创建一个新的Git存储库
在新目录或现有目录中初始化git存储库

$ cd my-project/
$ git init
$ heroku git:remote -a appname

部署您的应用程序
将代码提交到存储库并使用Gi​​t将其部署到Heroku。

$ git add . 
$ git commit -am "make it better"
$ git push heroku master

现有的Git存储库
对于现有存储库,只需添加heroku远程

即可
$ heroku git:remote -a appname

答案 4 :(得分:5)

您忘记了将应用程序名称链接到您的heroku。这是一个非常常见的错误。 如果未创建您的应用,请使用:

create function get_all()
  returns table (table_name text, row_data jsonb) -- specify columns and data types
as
$$
declare 
  l_rec record;
  l_sql text;
begin
  for l_rec in select schemaname, tablename
               from pg_tables
               where schemaname = 'bla'
  loop
    l_sql := format('select %L, to_jsonb(t) from %I.%I as t', 
                    l_rec.schemaname, l_rec.schemaname, l_rec.tablename);
    return query execute l_sql;
  end loop;
end
$$
language plpgsql;

其他:

heroku create (optional app name)

答案 5 :(得分:4)

可能值得检查.git文件夹中的配置文件。如果缺少heroku参数,那么你会得到这个错误heroku param

[remote "heroku"]
    url = git@heroku.com:`[Your heroku app].git
    fetch = +refs/heads/*:refs/remotes/heroku/*

.git文件夹应位于您在heroku中创建的应用程序的本地计算机文件目录中。例如C:\ Users \ You \ Your app.git

希望这有帮助

答案 6 :(得分:4)

关注official Heroku article

初始化GIT

$ cd myapp
$ git init

$ git add .
$ git commit -m "my first commit"

然后用:

创建(初始化)heroku app
$ heroku create YourAppName

最后添加git remote:

$ heroku git:remote -a YourAppName

现在,您可以使用以下方式安全地部署应用程序:

$ git push heroku master

您应该等待一段时间,看看在部署时是否在控制台上没有任何错误/中断。有关详细信息,请查看heroku article

答案 7 :(得分:3)

我的问题是我使用git(而不是heroku git)来克隆应用程序。然后我不得不:

git remote add heroku git@heroku.com:MyApp.git

请务必将MyApp更改为您的应用名称。

然后我可以继续:

git push heroku master

答案 8 :(得分:2)

对我来说,答案是在运行heroku creategit push heroku master

之前进入应用的根目录

答案 9 :(得分:2)

如果弹出此错误,则因为没有名为Heroku的远程。当你做一个Heroku创建时,如果git遥控器还不存在,我们会自动创建一个(假设你在一个git repo中)。要查看您的遥控器类型:

git remote -v”。 #对于名为“appname”的应用,您将看到以下内容:

$ git remote -v
heroku git@heroku.com:appname.git (fetch)
heroku git@heroku.com:appname.git (push)

如果您看到应用的遥控器,则只需“git push master”并替换为实际的远程名称。

如果缺少,可以使用以下命令添加遥控器:

git remote add heroku git@heroku.com:appname.git

如果您已经添加了名为Heroku的遥控器,则可能会出现如下错误:

fatal: remote heroku already exists.

所以,然后删除现有的遥控器并使用上面的命令再次添加:

git remote rm heroku

希望这会有所帮助......

答案 10 :(得分:1)

运行此

heroku create
在推送代码之前

答案 11 :(得分:1)

heroku git:remote -a YourAppName

答案 12 :(得分:1)

显示heroku可以访问的所有应用

heroku apps

检查您的应用是否存在 然后

 execute heroku git:remote -a yourapp_exist

答案 13 :(得分:1)

我得到了同样的错误,结果发现我在错误的目录中。如果仔细检查您是否在根目录中然后再次运行heroku createheroku git push master,这是一个简单的错误。当然,你必须在heroku步骤之前已经完成git init,如上面的StickMaNX答案所述。

答案 14 :(得分:1)

我遇到了同样的错误,造成了更多的新手错误:我输入的是Heroku,大写字母为“H”,而不是小写。

我认识到对于遇到此错误的每个人来说肯定不是解决方案,但这是我的理由。

答案 15 :(得分:0)

我必须以管理员权限运行Windows命令提示符

答案 16 :(得分:0)

如果heroku已安装在开发人员机器上,则以下命令对于将其部署在heroku上的ruby上的Ruby非常有效。 #表示评论

  1. heroku登录
  2. heroku创建
  3. heroku keys:add#这会将本地计算机密钥添加到heroku,以便 避免重复输入密码
  4. git push heroku master
  5. heroku将new-application-name #rename应用程序重命名为 自动生成的heroku名称以外的首选名称

答案 17 :(得分:0)

就我而言,我已经登录并且刚刚执行git push

答案 18 :(得分:0)

我遇到了同样的问题,但是后来我发现我忘了在部署应用之前创建应用。在终端中尝试以下步骤。

heroku login
heroku create

我只是在学习heroku,经常忘记这些步骤,所以我写了一篇有关它的文章。您可以在这里找到它:https://medium.com/@saurav.panthee/deploy-flask-app-to-heroku-under-3-minutes-2ec1c0bc403a

答案 19 :(得分:0)

我已经在这里看到了所有答案,唯一缺少的是经过以下步骤后:

$ git add .
$ git commit -m "first heroku commit"

您应该运行以下命令:

$ heroku git:remote -a <YourAppNameOnHeroku>

最后,运行此命令:

$ git push -f heroku <NameOfBranch>:master

注意,我使用<< strong> NameOfBranch >,因为如果您当前在另一个分支中,它仍会引发错误,因此,如果您在master中使用master,请输入名称。在那里分支。

答案 20 :(得分:0)

对于那些试图让heroku在codeanywhere IDE上工作的人:

heroku login
git remote add heroku git@heroku.com:MyApp.git
git push heroku

答案 21 :(得分:0)

我在运行git push heroku main之前忘记创建域名。创建域名可以解决该问题。

答案 22 :(得分:0)

输入 heroku create 然后 git push heroku master(这是在使用“git init”创建存储库并提交项目之后)