Jouer avec Symfony2 sur github

Comme vous ne l’avez peut-être pas loupé si vous suiviez le trac symfony ou si vous suivez les bonnes personnes ( ;-) ) sur twitter, Symfony2 utilise maintenant Git comme gestionnaire de version et non plus Svn. Le code source a été déplacé sur github ici. Cela devrait permettre plus de participations externes (ça a déjà commencé avec pborelli, CodingFabian et denderello), vu la facilité pour cloner un repository (le repository c’est l’endroit où sont stockées le sources à distance) avec git.

Si comme moi, vous connaissez mal ou peu Git, vous pourrez commencer par lire le “Learn GitHub” qui pourra vous en apprendre un peu plus. Je vais essayer de vous donner les commandes de base pour récupérer en lecture seule ou en écriture le repository Symfony2

Récupérer le code source

Le premier cas : vous souhaitez juste récupérer le code source pour jouer avec, sans le modifier. Dans ce cas, pas besoin de créer une branche du repository principal, récupérez le juste en lecture seule. Je pars ici du principe que vous êtes sur un *nix et que Git est installé, si vous n’avez pas installé Git allez le faire de ce pas, si vous êtes sous Windows je ne peux vous aider !

Rendez-vous sur l’url du dépôt GitHub de Symfony2 et copiez l’url Read-Only qui devrait être : git://github.com/symfony/symfony.git

Vous pouvez ensuite récupérer les sources en local avec la commande

git clone git://github.com/symfony/symfony.git

Vous aurez un beau répertoire symfony avec les sources.

Effectuer des changements

Si vous voulez effectuer des changements comme un grand sur le code source de symfony, il vous faudra créer une branche. Vous devez être au préalable inscrit sur GitHub. Si vous vous rendez à l’url du dépôt GitHub de Symfony2 vous devriez avoir quelque chose comme cela en haut :

À la place de “Your fork” vous aurez la possibilité de forker. Je ne l’ai plus car j’ai déjà forké en fait ;-) Cela vous créera un repository dans votre compte GitHub auquel vous pourrez accéder comme précédemment, mais cette fois-ci en lecture/écriture. Juste l’url du repository devrait avoir changée, pour moi la commande c’est :

git clone git@github.com:vjousse/symfony.git

N’oubliez pas d’avoir généré et envoyé votre clef publique sur GitHub avant, sinon vous aurez une belle erreur. Voilà, vous pouvez maintenant effectuer vos changements et les répercuter sur le serveur comme expliqué dans le “Learn GitHub”.

Symfony2, un exemple de code

Tout d’abord il va vous falloir PHP 5.3 d’installé, si ce n’est pas le cas n’allez pas plus loin ! Ensuite il va falloir vous faire aux namespaces PHP et ses \, mais ça ça viendra avec le temps ! Pour finir, allez faire un tour sur git pour recopier un petit snippet d’ubermuda modifié par Fabien Potencier. Je vous le recopie ici :

// change this with the actual path you cloned sf2 to
$sf2_path = '~/symfony/src';
 
use Symfony\Foundation\ClassLoader;
use Symfony\Components\CLI\Application;
 
require_once $sf2_path.'/Symfony/Foundation/ClassLoader.php';
 
$loader = new ClassLoader();
$loader->registerNamespace('Symfony', $sf2_path);
$loader->register();
 
$app = new Application();
$app->run();

On ne parle pour l’instant que du composant CLI de Symfony2 qui vient juste d’être ajouté, on ne manquera pas de vous tenir au courant du reste des évolutions par la suite. À vous de jouer !

Tags: ,

A propos de l'auteur

Développeur depuis une dizaine d'années maintenant il se tourne de plus en plus vers Python et les langages fonctionnels comme Scala. Il est l'auteur de l'ebook Vim pour les humains. Vous pouvez le trouver sur irc, twitter, sur Github ou un peu partout sous le pseudo vjousse. Il tient aussi un blog sur le développement personnel.

Vous avez aimé ce billet? Faites le savoir!

  • Delicious
  • Twitter
  • Technorati Favorites
  • FriendFeed
  • Google Bookmarks
  • Share

7 Réponses

  1. Affreux_Jojo 6 January 2010 à 11 h 22 min #

    Quelques noms de personnes intéressantes à suivre ? :D

  2. Vince 6 January 2010 à 11 h 42 min #

    Moi ? :D

    Pour ne vexer personne je dirais @fabpot pour le sur, ensuite la liste de @n1k0 peut être un bon point de départ : http://twitter.com/n1k0/symfony

  3. Affreux_Jojo 6 January 2010 à 15 h 25 min #

    Je te suis mais pas sur Twitter.
    J’ai beaucoup de mal à y passer car souvent il n’y pas d’informations à mes yeux (ou bien je ne suis pas les bonnes personnes :p)

  4. Éric 6 January 2010 à 16 h 03 min #

    Pour ceux qui sont sur Mac et qui préfèrent utiliser une interface graphique plutôt que de la ligne de commande, l’application GitX est ce que j’ai trouvé de plus complet à ce jour : http://gitx.frim.nl

  5. Tim 6 January 2010 à 16 h 09 min #

    Je confirme Gitx c’est très bon!

  6. pad 25 July 2010 à 13 h 50 min #

    Mettre / écrire ” Symfony2 “… à la place de ” Symfony 2 ”

    Explications: http://tinyurl.com/38wugpw

    … et l’article ne sera que mieux référencé ;-)

  7. Vince 21 August 2010 à 16 h 07 min #

    Merci du rappel, même si cet article est un peu obsolète maintenant ;)