我正在学习本教程https://www.railstutorial.org/book/static_pages#sec-sample_app_setup,并成功完成了所有步骤(git commit和push on github,heroku login和heroku app creation),直到这个命令:
$ git push heroku master
我也尝试过:
$ git push heroku origin
$ git push heroku
导致了这个错误:
> fatal: No path specified. See 'man git-pull' for valid url syntax
我尝试按照this answer来解决它,但它对我不起作用。
在我尝试了最佳答案建议之后,这是我在.git中的配置文件:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = https://github.com/kunokdev/sample_app.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "heroku"]
url = https://git.heroku.com/test774.git
fetch = +refs/heads/*:refs/remotes/heroku/*
任何想法是什么问题?我正在使用Ubuntu 14.04操作系统。
$ git config --list | grep heroku
url.ssh://git@heroku.com.insteadof=https://git.heroku.com/
remote.heroku.url=https://git.heroku.com/test774.git
remote.heroku.fetch=+refs/heads/*:refs/remotes/heroku/*
答案 0 :(得分:1)
我设法解决了这个问题所以我在这里分享解决方案。所以这些是从0到部署的步骤:
$ cd path/to/dir
$ git init
$ git add -A
$ git commit -m "Initialized"
$ heroku login
$ heroku create appname
$ heroku git:remote -a appname
$ git remote -v
此时,我们可以看到问题所在。由于某些奇怪的原因,heroku生成了无效的URL。正如您在输出中看到的那样:(注意:我使用kunokdev
作为应用名称)
heroku ssh://git@heroku.comkunokdev.git (fetch)
heroku ssh://git@heroku.comkunokdev.git (push)
origin https://github.com/kunokdev/kunokdev.git (fetch)
origin https://github.com/kunokdev/kunokdev.git (push)
你看到前两行吗?它有... heroku.comkunokdev.git
而不是heroku.com/kunokdev.git
正如Ruby On Rails小组中的一位好人所建议的那样;要解决这个问题,我需要删除远程并添加如下修改过的:
$ git remote rm heroku
$ git remote add heroku ssh://git@heroku.com/kunokdev.git
此时使用$ git push heroku master
时,应该没有与无效路径网址相关的错误。
答案 1 :(得分:0)
相当明显,但你可以跳过这一行。
heroku git:remote -a appname
然后做你在这里做的事。
git remote add heroku ssh://git@heroku.com/kunokdev.git
git remote add name_of_remote
是一个标准的git命令,因此不需要为该部分使用heroku CLI。
git push
的约定是
git push name_of_remote_repo name_of_local_branch
如果您要学习rails开发,您可以在GIT上做一些基本的阅读或课程。你可以在几小时内学习基础知识。 https://www.codeschool.com/courses/try-git
答案 2 :(得分:-1)
您是否已在heroku上创建应用程序? $ heroku创建#some-name-you-choose
您是否已转到您的heroku帐户并检查路径是否已创建?