我在推送到 mercurial 存储库时遇到问题:
$ hg push
pushing to https://user:***@hg.domain.com/X_repo
searching for changes
abort: authorization failed
可以通过 Web 浏览器访问相同的 URL(具有相同的凭据)。另外,我在没有将 usr+pass 嵌入 URL 的情况下进行了尝试。
HTTPS 配置正确,我尝试了 Basic 和 Digest auth —— 没有运气。
拉(通过 HTTP)工作正常。
我正在使用 hgwebdir 为我的仓库提供服务。
我还应该检查什么?
我发现了这个:http ://code.google.com/p/support/issues/detail?id=2580 在我的情况下它不是随机的,它每次都会发生。
我的虚拟主机配置的相关部分:
WSGIScriptAlias / /home/(...)/hgwebdir.wsgi
<Directory /home/(...)>
AuthType Basic
AuthUserFile /(...)/basic-password
AuthName (...)
Require valid-user
Order deny,allow
Allow from all
</Directory>
$ hg -v
Mercurial Distributed SCM (version 1.0.2)
奇怪的是,hg 传出工作正常:
$ hg outgoing
comparing with https://hg.domain.com/X_repo
http authorization required
realm: ...
user: ...
password:
searching for changes
changeset: 64:...
tag: tip
user: ...
date: ...
summary: ...