recebi uma resposta dos ótimos amigos do canal de IRC do Mercurial. Isso foi endereçado em Issue2255 . Eu fiz as alterações e funciona como um encanto.
Estou tendo um erro estranho que estou tentando rastrear. Eu estava tentando configurar o mercurial no meu servidor doméstico neste fim de semana. Parece que estou correndo para o ponto em que estou tentando fazer com que os repositórios sejam publicados corretamente.
Estou executando o Ubuntu 10.04 LTS com o Mercurial versão 1.4.3.
Eu segui o guia hgwebdir e tudo parece funcionar muito bem, posso puxar e empurrar meus repositórios locais. Então eu tentei adicionar autenticação básica mudando
ScriptAliasMatch ^/hg(.*) /var/hg/hgwebdir.cgi$1
<Directory "/var/hg">
Options ExecCGI FollowSymLinks
AllowOverride None
</Directory>
para
ScriptAliasMatch ^/hg(.*) /var/hg/hgwebdir.cgi$1
<Directory "/var/hg">
Options ExecCGI FollowSymLinks
AllowOverride None
AuthType Basic
AuthName hgwebdir
AuthUserFile /usr/local/etc/httpd/users
Require valid-user
</Directory>
Isso funciona exatamente como eu esperava quando navego para o diretório pelo meu navegador da Web, mas quando eu hg push
obtenho uma longa seção repetindo
File "/usr/lib/python2.6/urllib2.py", line 369, in _call_chain
result = func(*args)
File "/usr/lib/python2.6/urllib2.py", line 855, in http_error_401
url, req, headers)
File "/usr/lib/python2.6/urllib2.py", line 833, in http_error_auth_reqed
return self.retry_http_basic_auth(host, req, realm)
File "/usr/lib/python2.6/urllib2.py", line 843, in retry_http_basic_auth
return self.parent.open(req, timeout=req.timeout)
seguido por
File "/usr/lib/pymodules/python2.6/mercurial/keepalive.py", line 249, in do_open
self._start_transaction(h, req)
File "/usr/lib/pymodules/python2.6/mercurial/url.py", line 419, in _start_transaction
return keepalive.HTTPHandler._start_transaction(self, h, req)
File "/usr/lib/pymodules/python2.6/mercurial/keepalive.py", line 342, in _start_transaction
h.endheaders()
File "/usr/lib/python2.6/httplib.py", line 904, in endheaders
self._send_output()
File "/usr/lib/python2.6/httplib.py", line 776, in _send_output
self.send(msg)
File "/usr/lib/pymodules/python2.6/mercurial/url.py", line 247, in _sendfile
connection.send(self, data)
File "/usr/lib/pymodules/python2.6/mercurial/keepalive.py", line 519, in safesend
self.connect()
File "/usr/lib/pymodules/python2.6/mercurial/url.py", line 273, in connect
keepalive.HTTPConnection.connect(self)
RuntimeError: maximum recursion depth exceeded while calling a Python object
Estou um pouco perdido neste. Eu realmente não tenho certeza porque adicionar a autorização parece funcionar bem através do meu navegador da web, mas jogue esses erros de hg
. Qualquer ajuda seria muito apreciada.
recebi uma resposta dos ótimos amigos do canal de IRC do Mercurial. Isso foi endereçado em Issue2255 . Eu fiz as alterações e funciona como um encanto.