Svn - obtenir la liste de tous les prises en pension sur un serveur afin que je puisse SVNSync

StackOverflow https://stackoverflow.com/questions/2801994

  •  25-09-2019
  •  | 
  •  

Question

Je tente de créer une sauvegarde de dépôts existants de svn de mon client, qui est accessible au public sur http.

Si possible, je voudrais être en mesure de faire de nouveaux dépôts automatiquement, à partir de tout ordinateur, sans avoir à donner accès à la console au serveur à des parties externes (les utilisateurs pourraient faire ls sur mon repo svn dir)

Mon problème est que je dois connaître la liste des dépôts svn sur le serveur - il n'est pas une liste fixe, car l'utilisateur ajoutera de nouveaux dépôts au fil du temps

.

Je suis en mesure d'énumérer les dépôts sur une page html via le module mod_dav_svn d'Apache, en utilisant la directive SVNListParentPath On. Je suis arrivé cette page: http://svn.ohwr.org/

Ma question est: quelle est la meilleure façon d'obtenir une liste utile de ces dépôts? Je vais devoir analyser cette liste afin de faire des synchronisations, probablement à l'aide des commandes shell.

Dois-je analyser le code HTML avec des commandes shell, ou est-il une meilleure façon d'obtenir cette liste?

Était-ce utile?

La solution

J'ai fini par créer ma propre solution.

J'ai mis en place une tâche cron qui fait un ls sur le dossier svn et redirige sa sortie vers un fichier accessible au public sur le serveur. Ce fichier n'a pas les balises HTML, il est un fichier texte avec seulement les noms des dépôts.

De cette façon, les clients peuvent wget ce fichier et itérer sur les noms de référentiel assez facilement.

Je ne suis pas très heureux de cette mise en œuvre; tout cela fonctionne, il est un peu « aki ». Je préfère utiliser quelque chose fourni par SVN ou Apache eux-mêmes.

Si quelqu'un publie une meilleure solution, je l'accepte. En attendant, voici ma meilleure réponse possible.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top