Mercurial push, abort: authorization failed

Solution 1:

If anybody wants to make it run on local machine then adding this to server REPO/.hg/hgrc will do the work:

[web]
allow_push = *
push_ssl = false

as described at this site.

Solution 2:

Problem turned out to be repo dir permissions. chown www-data solved it...

Solution 3:

For those with TortoiseHg pushing to a web server (another unauthorized user on another PC):

In TortoiseHg: File - Settings - (Either globally or just for the current repository - tabs) then the Server settings. Web Server

Push Requires SSL - No
Allow Push - *

This does the same thing through the UI as lukmdo's answer above (editing the hgrc file).

Solution 4:

It is strange that you can run hg outgoing but not hg push since it is my understanding that they both authenticate in the same way.

Unfortunately I'm not a hgweb expert. Please mail to the Mercurial list ([email protected]) and/or come online in IRC (#mercurial on irc.freenode.net). There will be many more people to help you there. IRC is especially good since these things are much easier to debug interactively.

Solution 5:

Just in case it might help someone - I encountered this error for unknown reasons, all permissions were OK, and just restarting apache solved it.