#!/bin/sh BASE_DIR=/var/subversion NOM_DEPOT="$1" # Tous les traitements se font en ASCII pur OLD_LC_ALL="$LC_ALL" export LC_ALL=C export LANG=C while [ $( printf "$NOM_DEPOT" | egrep -c "^[a-zA-Z0-9-]+$" ) -ne 1 ]; do if [ "$NOM_DEPOT" != "" ]; then echo "ERREUR: nom de projet non-valide, veuillez n'utiliser que l'ensemble de caractères [a-zA-Z0-9-]." >&2 echo fi echo "Veuillez entrer le nom de votre dépôt (Ctrl+c pour annuler) :" read NOM_DEPOT done if [ -d "$BASE_DIR/$NOM_DEPOT" ]; then echo "ERREUR: depot deja existant." >&2 exit 1 fi # Remise en place des valeurs "locales" export LC_ALL="$OLD_LC_ALL" export LANG="$OLD_LC_ALL" # Création du dépôt vide cd "$BASE_DIR" svnadmin create "$NOM_DEPOT" # Arborescence trunk, tags, branches svn -m "Structure initiale." mkdir "file://$BASE_DIR/$NOM_DEPOT/trunk" "file://$BASE_DIR/$NOM_DEPOT/tags" "file://$BASE_DIR/$NOM_DEPOT/branches" "file://$BASE_DIR/$NOM_DEPOT/doc" # Attribution à l'utilisateur www-data pour permettre à Apache de le gérer chown -R www-data:www-data "$NOM_DEPOT"