症状:
git clone https://username@git.example.com:8448/git/libs/project.git
Cloning into 'project' ...
Password for 'https://username@git.example.com:8448': [1] note
fatal: Authentication failed for 'https://username@git.example.com:8448/git/libs/project.git'
[1] 在其他系统上,我不需要输入这个。我相信我已经配置好了我的git客户端,不会要求输入密码。在这个提示中,我提供的任何密码都不起作用。
我在我的~/.gitconfig文件中有以下内容:
[http]
sslKey = /Users/macuser/auth/username.key
sslCert = /Users/macuser/auth/username.pem
sslVerify = false
[user]
name = username
email = username@example.com
当我设置客户端证书时,我收到了以下文件,将其放置在名为~/auth的文件夹中:
username.cer
username.p12
username.pem
ca.cer
我运行了以下命令以生成密钥文件:
openssl rsa -in /Users/macuser/auth/username.pem -out /Users/macuser/auth/username.key
然后我运行了git config命令,例如:
git config --global http.sslKey /Users/macuser/auth/username.key
git config --global http.sslCert /Users/macuser/auth/username.pem
git config --global http.sslVerify false
在按照上述步骤配置git之后,在其他系统上执行“git clone https”时,它可以正常工作。但是在安装了Xcode命令行工具的OS X Mavericks上,git无法进行身份验证。
我做错了什么?
提前感谢您。
编辑:
我想添加这个信息。服务器正在使用自签名证书或来自没有授权的机构的证书。这就是为什么我将http.sslVerify设置为false的原因。
以下是详细克隆命令。 Linux和Mac上的设置相同,除了auth文件夹位置。 Linux版本成功,而Mac版本失败。
http://cache.codebot.org/stackoverflow/linux-git-works.txt
http://cache.codebot.org/stackoverflow/mac-git-fails.txt
答案:
sudo port install git-core