git github cannot push to origin

2019-02-05 02:16发布

问题:

I may be missing something, but I'm sure that I've checked everything, I forked a repo and cloned it on my system, made some changes after commiting did git push origin master

it says

fatal: remote error: 
  You can't push to git://github.com/my_username/my_repo.git
  Use git@github.com:my_username/my_repo.git

Am I missing something? then I tried git remote add origin https://github.com/my_username/my_repo.git

it returned

fatal: remote origin already exists.

I dont understand why this is hapenning, pls help

回答1:

The url with

git://github.com/my_username/my_repo.git

git:// Only gives read only access as mentioned in the side too..

Whereas,

git@github.com:my_username/my_repo.git

gives read and write access as mentioned in site

Though, https://github.com/my_username/my_repo.git also has read and write access but it was not working in your case because you trying to create a new remote with the same name instead of resetting it. The correct syntax as mentioned was

git remote set-url origin git@github.com:my_username/my_repo.git

And

git remote set-url origin https://github.com/my_username/my_repo.git

would also work.



回答2:

git remote set-url origin git@github.com:my_username/my_repo.git



回答3:

The reason why this does not work is, that the git:// protocol, which you chose for cloning, is only configured for read access at Github (since it only would support anonymous write access without access restrictions).
Github supports both ssh (git@github.com...) and https for write access to repositories.

Your second command fails, because when you clone, git already creates a remote named origin. So if you want to add another remote repository, you have to give another name.



标签: git github push