38 lines
1 KiB
Bash
Executable file
38 lines
1 KiB
Bash
Executable file
#!/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"
|
|
|