Git push origin master returns “fatal: No path specified.”

匿名 (未验证) 提交于 2019-12-03 01:58:03

问题:

I recently set up a new account with github. I'm following a Rails tutorial from Michael Hartl online ( http://www.railstutorial.org/book#fig:github_first_page ) and followed his instructions to set up my git which were also inline with the setup instructions at github. Anyways, the "Next Steps" section on github were:

  mkdir sample_app   cd sample_app   git init   touch README   git add README   git commit -m 'first commit'   git remote add origin git@github.com:rosdabos55/sample_app.git   git push origin master

I got all the way to the last instruction (git push origin master) without any problem. When I entered that last line into my terminal, however, I got this error message: "fatal: No path specified. See 'man git-pull' for valid url syntax." What might I be doing wrong?

Here are the contents of .git/config (reconstructed by Jefromi from the output of git config -l pasted into a comment below):

[user]     name = Ross     email = [REDACTED] [core]     editor = gvim -f     repositoryformatversion = 0     filemode = true     bare = false     logallrefupdates = true [remote "origin"]     url = git@github.com:     fetch = +refs/heads/*:refs/remotes/origin/*

回答1:

I've stated this in the comments to another answer, but it's really the answer (and I've edited the appropriate section of the comments into the question where it belongs).

The URL for the remote was not configured correctly, for whatever reason. It's set to "git@github.com:", which is clearly missing the path, producing precisely the error you see. You need to reconfigure it correctly. You could simply edit .git/config, changing the appropriate line to contain the path. Or you could do this:

git remote rm origin git remote add origin 'git@github.com:rosdabos55/sample_app.git'

You almost certainly made some small typo or careless mistake when you added the remote the first time - perhaps you hit enter in the middle of it, perhaps you typed a space after the colon. (For some reason, git does not appear to throw an error when you provide an extra argument after remote add - it just ignores it.) The upshot is that you didn't actually run that command, and you added a remote with an incomplete URL.



回答2:

You may need to git pull origin before you git push origin master.



回答3:

Can you post the output of git remote show?

It looks like something went wrong when you added your remote repository (git remote add origin git@github.com:rosdabos55/sample_app.git).



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!