使用的.netrc与SourceForge上和Git
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用的.netrc与SourceForge上和Git相关的知识,希望对你有一定的参考价值。
我知道,这似乎是一个新手的问题,但事实并非如此。我使用.netrc文件与所有的Git仓库成功,除了在SourceForge上的人。
我似乎无法找到任何在SF文档任何东西。
我基本上这些行添加到我的.netrc,但它仍然要求我的密码:
machine git.code.sf.net
login xxxxx
password xxxxx
machine api.git.code.sf.net
login xxxxx
password xxxxx
我想我能想到的所有其他变化,但我不能使它发挥作用。有没有人在那里,已经做到了这一点?如何?
答案
你可以尝试添加的协议,以及在.netrc文件(考虑Git HTTPS URL for SourceForge是https://<USERNAME>@git.code.sf.net/p/PROJECTNAME/MOUNTPOINT
):
machine git.code.sf.net
login <USERNAME>
password xxxxx
protocol https
看看问题是否依然存在。
请通过git remote -v
返回(远程“原点”)确保URL不包括您的登录:
git remote set-url origin https://<USERNAME>@git.code.sf.net/p/PROJECTNAME/MOUNTPOINT
^^^^^^^^^
如果它不工作,尝试设置GIT_CURL_VERBOSE
,为了有更多的信息(如in this thread)。
原来,OP purplehuman是使用SSH URL而不是HTTPS之一。
正如我commented below:
- SourceForge上使用SSH或HTTPS进行读/写访问。
- 如果你正在使用SSH,然后我确认
.netrc
不参与任何方式:它仅用于为HTTPS URL提供的用户名/密码,而不是为SSH密码。对于SSH密码,(假设你的SSH私钥由密码保护的),那么你需要一个ssh-agent
,而不是一个.netrc
文件。
要切换到HTTPS:
git remote set-url origin https://<USERNAME>@git.code.sf.net/p/PROJECTNAME/MOUNTPOINT
然后.netrc
文件将被使用(由curl
的git push
内)。
以上是关于使用的.netrc与SourceForge上和Git的主要内容,如果未能解决你的问题,请参考以下文章
Heroku CLI 登录失败并出现错误“错误:ENOENT:没有这样的文件或目录,打开 'H:/_netrc'”