2010-04-14 4 views
2

Im fonctionnant cygwin sur un PC de Windows Vista. J'ai installé avec succès sshd, configuré et construit la gitose. Je peux cloner à distance le référentiel gitosis-admin.git, faire une modification à la config, la valider et la repousser sur la machine cygwin avec succès.La post-mise à jour de Gitose ne fonctionnera pas

Cependant, la post-mise à jour ne s'exécute pas et le nouveau référentiel (tel que spécifié dans la configuration) n'a pas été créé.

J'ai couru:

chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update 

et ls -l montre les éléments suivants:

-rwxr-xr-x 1 git None 69 2010-04-13 22:55 post-update 

encore, quand je lance:

./post-update 

Je reçois l'erreur suivante:

ERROR:gitosis.run_hook:Must have GIT_DIR set in enviroment 

Ive inclus dans mon git .bashrc la ligne:

GIT_DIR=$HOME/repositories/gitosis-admin.git/ 

et si je tapez set à l'invite, je peux voir:

GIT_DIR=/home/git/repositories/gitosis-admin.git/ 

Que puis-je essayer, parce que Im court d'idées.

+0

Je n'ai pas utilisé cygwin depuis des années, alors j'oublie - est-ce qu'il importe aussi des propriétés d'environnement de Windows? Vous pouvez essayer de définir la propriété dans Windows. – ebneter

+0

Même problème ici. @Andy avez-vous des nouvelles de ce problème? – edigu

Répondre

1

Tout d'abord, ne définissez pas GIT_DIR - cela ne devrait pas être nécessaire. Deuxièmement, je crois que votre problème est que vous avez ajouté l'autorisation d'écriture pour un nouveau dépôt à votre config Gitosis, mais ce n'est pas créé lorsque vous appuyez sur votre config. C'est parce que l'ajout d'un nouveau repo à votre config Gitosis ne créer il - il donne juste un utilisateur la permission pour le créer.

Par exemple, disons que vous ajoutez ce rendez-vous votre config Gitosis:

[group new_repo] 
    members = me 
    writable = new_repo 

Lorsque vous appuyez sur les changements à, new_repo ne sont créées pas - vous avez simplement l'autorisation de créer. Afin de créer réellement sur le serveur, créez le repo sur votre machine locale, puis ajoutez votre serveur Gitosis comme télécommande:

$ git remote add gitosis [email protected]:new_repo.git 

Et puis poussez-le:

$ git push gitosis master 

Le nouveau repo sera créé lorsque vous faites le git push.

+1

J'ai essayé d'engager un projet new_repo, qui a échoué aussi. une seule réponse, fatale: l'extrémité distante a raccroché de façon inattendue. Fait intéressant, je me suis connecté au cygwin bash, créé manuellement un projet new_repo git sous le dossier des dépôts. Et que je ne peux pas cloner non plus. Pourtant, obtenir gitosis-admin.git ne pose aucun problème. – Andy

+0

@Andy, bonjour, as-tu résolu le problème? –

Questions connexes