PowerShell执行heroku git:remote连接Heroku应用报非git仓库错误
报错原因
heroku git:remote命令本质是给本地Git仓库添加Heroku的远程仓库地址,底层直接调用Git的remote配置能力,必须在本地Git仓库目录下才能运行。你拿到的fatal: not a git repository报错,就是因为当前PowerShell所在的工作目录不是初始化过Git的项目目录——多数情况是打开PowerShell之后没切换路径,直接在默认的用户根目录敲了命令。
解决方法
按本地实际情况选对应操作即可:
- 如果你本地已经存了todo-dennis的项目代码
- 用
cd 你的项目本地存放路径命令,切到项目根目录(就是存放package.json、源码文件夹这些项目核心文件的那一层,别停在上层文件夹、桌面这类非项目路径) - 如果这个项目文件夹从来没做过Git初始化,依次执行以下命令:
git init git add . git commit -m "init commit" - 重新执行关联命令:
heroku git:remote -a todo-dennis - 执行
git remote -v校验,输出里能看到heroku对应的远程地址就说明配置完成。
- 用
- 如果你本地还没有这个项目的代码,准备用空文件夹关联线上应用
- 切到你提前建好的、用来存项目代码的空文件夹,执行
git init - 执行关联命令
heroku git:remote -a todo-dennis - 需要拉取线上已有代码的话,执行
git pull heroku main即可,如果是老版本Heroku应用用的master分支,把命令里的main换成master就行。
- 切到你提前建好的、用来存项目代码的空文件夹,执行
注意事项
- 关联操作前先执行
heroku login,确认已经登录了对todo-dennis应用有操作权限的Heroku账号,避免后续报权限错误 - 如果执行Git命令时提示“不是可识别的命令”,先确认本地已经安装Git,并且把Git的执行路径加到了系统环境变量里,重开PowerShell再操作。
内容的提问来源于stack exchange,提问作者Taha
相关产品推荐
相关产品推荐

