2010-11-15 6 views
8

J'ai essayé d'installer un référentiel mercurial sur mon serveur afin que mon équipe puisse travailler à partir du leur. Je cours le serveur d'Ubuntu 10.4 et j'ai fait l'installation de mercurial using apt-get. Maintenant tout s'est bien passé.HG Push a échoué; Autorisation refusée .hg/store/lock

I dir avec init L'hg très bien, je configurer le hgrc comme suit:

[web] 
push_ssl = False 
allow_push = * 

[trusted] 
users = * 
groups= 

alors je cours hg serve. Le serveur commence à écouter. Je peux cloner ce dépôt à un autre ordinateur, mais quand je tente de pousser mes changements j'obtenir l'erreur:

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

Du côté du serveur, je reçois l'erreur suivante:

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

Si quelqu'un a une solution à la façon de résoudre ce qui serait incroyable. J'ai fait des recherches sur google et trouvé des gens avec des problèmes similaires et ils disent que cela peut avoir quelque chose à voir avec l'utilisateur web n'ayant pas d'autorisations mais je suis nouveau dans tout cela et aucun d'eux ne donne de solutions pour résoudre le problème. Merci pour votre temps.

Répondre

10

Vous devez autoriser l'accès en écriture aux répertoires du référentiel à l'utilisateur qui exécute le processus du serveur Mercurial. Par exemple, le compte d'utilisateur qui exécute hg serve doit pouvoir écrire sur /home/UserName/projects/Project1/

BTW pouvez-vous fournir plus de détails sur la ligne de commande utilisée pour cloner le référentiel?

+2

pourquoi pas seulement Chown à l'utilisateur en cours d'exécution servir hg, et chmod -R 644 Projet1? –

+0

Si vous utilisez apache2, l'utilisateur par défaut: groupe est www-data: www-data –

3

Dans mon cas, avec dépôt Mercurial sur Redmine

HTTP Error: 500 (Permission denied)

Run

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

sur le serveur, il a travaillé pour moi.

(Fuente)

Questions connexes