【问题标题】:git svn https authenticationgit svn https 认证
【发布时间】:2014-09-04 08:05:27
【问题描述】:

git-svn document

--用户名= 对于 SVN 处理(http、https 和纯 svn)身份验证的传输,请指定用户名。对于其他传输方式(例如 svn+ssh://),您必须在 URL 中包含用户名,例如 svn+ssh://foo@svn.bar.com/project

但是,在我的电脑(Windows 7,git version 1.9.4.msysgit.0)中,当我使用

git svn clone https://server/svn/repo

它首先询问我的 windows 用户名密码,然后(失败,因为服务器使用 svn auth)询问服务器用户名和密码。一切正常。

当我尝试克隆另一个 repo 时会出现问题。由于此 repo 仅对其他用户可用,因此我使用以下命令。

git svn clone https://server/svn/repo1 --username xxx

我预计它会要求输入密码,但它没有。它只是因为 403 错误而失败。

我还尝试克隆两个用户都可以使用的第三个 repo,但我想将用户指定为后一个用户,

git svn clone https://server/svn/repo2 --username xxx

没有任何密码提示就成功了。由于密码不同,它必须使用以前的用户凭据。

后来我意识到我应该使用

git svn clone https://server/svn/repo2 --username=xxx

但还是一样。

所以看起来--username=xxx 没有做任何事情。如何解决这个问题?

【问题讨论】:

标签: git svn authentication


【解决方案1】:

感谢谢尔盖的提示。在我清除 subversion 凭据缓存 (%HOMEPATH%\.subversion\auth\svn.simple) 后,它实际上可以工作。

但是我不知道为什么它是这样设计的——我希望一个显式的“--username”参数会覆盖凭证缓存中的任何东西。也许这只是一个错误?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 2010-12-12
    • 2016-06-02
    相关资源
    最近更新 更多