La gitose en elle-même n'a pas de fonction de suppression en raison de la façon dont elle est gérée via git commits. Si vous supprimez le référentiel du gitosis.conf
et validez la modification, le référentiel n'est plus accessible. Vous pouvez le réactiver ultérieurement ou vous pouvez éventuellement vous connecter au serveur et supprimer le fichier du repositories/
répertoire gitosis .
J'ai cloné mon gitosis-admin.git
référentiel et ajouté les éléments suivants, puis commis:
[group gitosis-admin]
writable = gitosis-admin test1
members = jbouse
Je suis ensuite allé dans mon répertoire personnel et j'ai effectué les opérations suivantes:
mkdir test1
cd test1
git init
git remote add origin git@server:test1.git
echo "Testing" > test.txt
git add test.txt
git commit -m 'First commit'
git push origin master:refs/heads/master
Cela devrait réussir à pousser vers le serveur, puis j'ai effacé le test1
répertoire et le clone de gitosis:
git clone git@server:test1.git
cd test1
echo "Test worked" > test.txt
git add test.txt
git commit -m 'Second commit'
git push
Cela devrait également pousser avec succès, donc je supprime ensuite la test1
ligne de la gitosis.conf
configuration et valide la modification ... J'essaie ensuite ce qui suit:
cd test1
echo "Final test" > test.txt
git add test.txt
git commit -m 'Third commit'
git push
Contrairement aux deux poussées précédentes, celle-ci échoue avec le message d'erreur suivant:
ERROR:gitosis.serve.main:Repository read access denied
fatal: The remote end hung up unexpectedly
L'erreur est due au fait que gitosis n'a rien configuré pour le test1
référentiel maintenant. Si vous essayez de cloner à nouveau le référentiel, vous recevrez la même erreur.