martes, 12 de noviembre de 2013

Como configurar un proyecto de Symfony2 y Git

En esta pequeña guía vamos a explicar como configurar de una forma simple, un proyecto de Symfony2 junto a al sistema de control de versiones Git.

Teniendo como escenario un servidor de desarrollo LAMP (Linux, Apache, MySQL, PHP), lo primero que vamos a hacer es descargar del sitio oficial de Symfony2 la última versión estable sin los vendors o librerías.


Ahora tenemos que descomprimir el paquete recién descargado y mover todos los archivos a nuestro directorio raíz de nuestro VirtualHost para mi ejemplo se encuentra en /var/www/proyecto, la misma nos va a quedar de la siguiente manera:


Con un editor de texto, vamos a crear un archivo llamado .gitignore, éste es un archivo oculto que Git es capás de interpretar y aprender ciertas directivas, como por ejemplo “ignorar en el control de versiones todo aquello que se encuentre en este archivo”. Su contenido es el siguiente:

/web/bundles/
/app/bootstrap*
/app/cache/*
/app/logs/*
/vendor/
/app/config/parameters.yml

Ahora si, iniciamos nuestro proyecto en Git con el siguiente comando:

$ git init
Initialized empty Git repository in /var/www/proyecto/.git/


Agregamos todos los archivos para que comience a realizar su seguimiento en el versionado

$ git add .

Podemos chequear el estado del repositorio en todo momento de la siguiente manera

$ git status

Por otro lado podemos realizar nuestro primer commit:

$ git commit -m "Inicio de un nuevo proyecto."

Ahora nos queda dejar funcional a Symfony2, esto significa descargar sus librerías y todo aquel componente que necesita para poder trabajar correctamente.

En estas últimas versiones de Symfony2, utiliza composer que es la que se encarga de descargar las librerías y todas las dependencias necesarias, haciendo de este un trabajo mucho más simple.

En la raíz de nuestro VirtualHost ejecutamos:

$ curl -s https://getcomposer.org/installer | php
Composer successfully installed to: /var/www/proyecto/composer.phar
Use it: php composer.phar

El mensaje nos indica que creó un archivo llamado composer.phar que va a ser la que vamos a utilizar para instalar lo que nos falta.

$ ./composer.phar install


Luego de esperar uno minutos a que se descarguen todas las librerías, vamos a poder utilizar Symfony2 desde su consola de la siguiente manera:

$ php app/console -V
Symfony version 2.3.6 - app/dev/debug


Ahora para guardar los cambios en Git vamos a ver que solo registró el nuevo archivo de composer y no todas las librerías que instaló

$ git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       composer.phar
nothing added to commit but untracked files present (use "git add" to track)

$ git add .
$ git commit -m "Archivo de composer almacenado."


Algunas aclaraciones finales


La razón por la que utilizamos el paquete de Symfony2 sin vendors o librerías y posteriormente no las registramos para que se les haga un seguimiento en Git, es para que nuestro proyecto sea mucho más portable y se pueda pasar a deploy a un servidor de producción con las últimas librerías actualizadas y de la forma más comoda.

Espero todos sus comentarios, consultas y dudas.

Saludos!

No hay comentarios.:

Publicar un comentario

Entradas populares