远程Pushurl将无法正常工作

时间:2012-05-05 17:25:57

标签: git github git-remote

我正在为我的项目使用GIT。现在我想将它与github集成,所以我创建了一个遥控器:

git remote add github https://WouterJ@github.com/WouterJ/project.git

但是现在我需要填写一个提取密码,这是我不想要的。所以我决定使用不同的URL来获取:

git remote set-url github http://github.com/WouterJ/project.git
git remote set-url --push github https://WouterJ@github.com/WouterJ/project.git

如果我运行git remote -v我就明白了:

$ git remote -v
github  http://github.com/WouterJ/project.git (fetch)
github  https://WouterJ@github.com/WouterJ/project.git (push)
origin  http://github.com/WouterJ/project.git (fetch)
origin  http://github.com/WouterJ/project.git (push)

我想,我想要的确想要。但是当我做推动时,我需要填写我的用户名。为什么?如果我直接推送到网址,如果填写它完美地工作:

git push https://WouterJ@github.com/WouterJ/project.git master

工作,但

git push github master

无效


我还使用git config设置了不同的推送网址:

git config remote.github.pushurl https://WouterJ@github.com/WouterJ/project.git

如果我从配置中获得推动它看起来是正确的:

$ git config remote.github.pushurl
https://WouterJ@github.com/WouterJ/project.git

同时查看.git / config文件,看起来一切都是正确的。


我在这里遗漏了什么吗?这是一个错误吗?我用的是Git1.7.4,那是错的吗?

2 个答案:

答案 0 :(得分:2)

我已经找到了如何解决这个问题,所以要回答我自己的问题:

诀窍是上传到Git1.7.8(或更高版本)。现在,您使用相同的设置并且没有_netrc文件:

$ git push github master
Password for 'https://WouterJ@github.com/':

$ git fetch github
fetching....

因此看起来该错误已在Git1.7.8(Release Notes

中修复

答案 1 :(得分:1)

为了推送到https GitHub地址,唯一缺少的部分是您的~/.netrc文件(或Windows上的%HOME%/_netrc文件),其中包含您的GitHub凭据。

请参阅“Git - How to use .netrc file on windows to save user and password”。

machine github.com
login <login_github>
password <password_github>

请参阅“Syncing with github”中的其他设置。