Objectif :
Créer un repository SVN pour un projet Symfony.
Rapatrier le projet sur un serveur de dévelopement.
Travailler sur le projet à distance du serveur SVN via SSH.
Serveur SVN : caztor.tite-cabane.org
Serveur de dev : localhost, c’est mon laptop ?
Projet : phu.veepee.dev
Utilisateur : moi, aka hugues
1. Sur le serveur SVN
1.1. Définition de quelques variables d’environement
$ export SVNREP_DIR=/home/hugues/svn
$ export SVN_EDITOR=vim
1.2 Créer un repository pour le nouveau projet
Je pars du principe que le répertoire svn est dans la home de l’utisateur
$ cd
$ mkdir svn
$ svnadmin create --fs-type fsfs $SVNREP_DIR/phu.veepee.dev
$ svn ls file://$SVNREP_DIR/phu.veepee.dev
$ svn mkdir -m "layout creation" file:///$SVNREP_DIR/phu.veepee.dev/trunk \
file:///$SVNREP_DIR/phu.veepee.dev/tags \
file:///$SVNREP_DIR/phu.veepee.dev/branches
2. Sur le serveur de développement
2.1. Rapatriement du projet en local
$ cd /opt/WebSites
$ svn checkout svn+ssh://caztor.tite-cabane.org/home/hugues/svn/phu.veepee.dev
2.2. Création de l’arborescence de base
$ cd phu.veepee.dev
$ mkdir trunk/data trunk/lib
$ svn add trunk/data trunk/lib
$ svn ci -m "data et lib"
$ cd trunk
Le reste du boulot s fait dans trunk.
2.4. Definition des repository externe pour Symfony
2.4.1. data
$ svn pe svn:externals data
pour symfony 1.0, copier la ligne suivante en haut du fichier :
symfony http://svn.symfony-project.com/branches/1.0/data/
pour symfony 1.1, copier la ligne suivante en haut du fichier :
symfony http://svn.symfony-project.com/branches/1.1/data/
2.4.2. lib
$ svn pe svn:externals lib
pour symfony 1 le viagra en ligne.0, copier la ligne suivante en haut du fichier :
symfony http://svn.symfony-project.com/branches/1.0/lib/
pour symfony 1.1, copier la ligne suivante en haut du fichier :
symfony http://svn.symfony-project.com/branches/1.1/lib/
2.5. Commit
$ svn ci -m "Symfony dependancies"
2.6. Update
Permet de rapatrier les sources de Symfony
$ svn update
2.7. Fichier de config
Au même niveau que data/ et lib/
$ mkdir config
$ vim config/config.php
Et copier les lignes ci-dessous :
< ?php
// symfony directories
$sf_symfony_lib_dir = realpath(dirname(__FILE__).'/../lib/symfony');
$sf_symfony_data_dir = realpath(dirname(__FILE__).'/../data/symfony');
2.8. Vérification de la version de Symfony
$ ./data/symfony/bin/symfony -V
symfony version 1.1.0-DEV
3. Génération du projet Symfony
$ ./data/symfony/bin/symfony generate:project phu.veepee.dev
pour Symfony 1.1
ou
$ ./data/symfony/bin/symfony init-project phu.veepee.dev
pour Symfony 1.0.
4. Tips pour 1.1
4.1. Author
./symfony configure:author "Hugues Lepesant hugues@lepesant.com"
4.2. Database
./symfony configure:database pgsql://devuser:devpass@localhost/phudb
Et voilà.
Vous pouvez coder…
Hug