HG推送失败;权限被拒绝.hg / store / lock

时间:2010-11-15 22:14:00

标签: mercurial ubuntu

我一直在尝试在我的服务器上设置一个mercurial存储库,以便我的团队可以使用他们的工作。我正在运行Ubuntu服务器10.4,我使用apt-get安装了mercurial。现在一切顺利。

我用hg初始化了一个目录,我按照以下方式设置了hgrc:

[web]
push_ssl = False
allow_push = *

[trusted]
users = *
groups=

然后我运行hg serve。服务器开始收听。我可以将此存储库克隆到另一台计算机,但当我尝试推送我的更改时,我收到错误:

C:\Users\UserName\Project1>hg push http://MyInternalIP:8000
pushing to http://MyInternalIP:8000
searching for changes
abort: HTTP Error 500: Internal Server Error

在服务器端,我收到以下错误:

LockUnavailable: [Errno 13] Permission denied: '/home/UserName/projects/Project1/.hg/store/lock'

如果有人有解决方法如何解决这个问题会很惊人。我用Google搜索并发现有类似问题的人,他们说这可能与没有权限的网络用户有关,但我是所有这一切的新手,他们都没有提供解决问题的方法。谢谢你的时间。

2 个答案:

答案 0 :(得分:10)

您必须允许对运行Mercurial服务器进程的用户的存储库目录具有写访问权限。即,运行hg serve的用户帐户必须能够写入/home/UserName/projects/Project1/

顺便说一句BTW,您可以提供有关用于克隆存储库的命令行的更多详细信息吗?

答案 1 :(得分:3)

在我使用redmine上的mercurial存储库的情况下

  

HTTP错误:500(权限被拒绝)

运行

chown -R www-data /path/to/repos

在服务器上,它对我有用。

Fuente