Rimorsoft Online
Blog Foro

Comandos para iniciarse en Composer


Composer tiene una gran cantidad de comandos que podemos utilizar para que nuestro desarrollo en PHP sea mas ameno y profesional. De hecho puedes verlos al escribir simplemente composer (sin ningún parametro adicional o argumento). Todo comenzará con la gran parabra composer y luego verás todos los comandos disponibles.

    _____
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/

Composer version 1.5.2 2017-09-10 10:19:25

// ....... Resto de comandos

Y la verdad son muchos, solo quiero mostrarte aquí los que yo considero mas útiles, de hecho los que por obligación nos hace usar Laravel, comencemos:

Self Update

Composer está en desarrollo activo. El comando seria composer self update, nos ayuda a mantener nuestro composer actualzado. Esto es tan simple como autoactualización, y así estar seguros de que estamos usando la última versión del composer.

Esto nunca pasa (al menos a mi nunca me ha pasado), pero si no estamos muy feliz con la versión instalada podemos usar el parametro --rollback es decir composer self-update --rollback para regresar al versión anterior.

Init

El comando init de composer básicamente nos ayuda a crear el archivo composer.json y así tener detalles del proyecto y el listado de paquetes que usará nuestro proyecto. Lo que debes hacer luego de ejecutar el comanto, es responder sus preguntas hasta finalizar el proceso.

Create Project

Este comando lo conocer, lo has visto al momento de instalar Laravel composer create-project --prefer-dist laravel/laravel blog, sucede que este comando se usa para descargar un proyecto entero e instalar todas sus dependencias.

Install

Es un comando muy usado, de hecho si te descargar nuestros proyecto desde github, tendrías luego que ejecutar composer install para instalar todas las dependencias y así usar el proyecto correctamente.

Update

Significa actualizar, el comando es composer update y al ejecutarlo composer actualizará todas nuestras dependencias o paquetes a la última versión. Vamos a usar este comando de vez en cuando para tener y garantizar que estamos ejecutando nuestro sistema con todo actualizado, y así aprovechar las correcciones de errores y las nuevas funciones y características.

El archivo misterioso composer.lock

composer.lock es conocido como el archivo misterioso que no deberíamos borrar. Vamos en este post a hablar sobre ese tema para cerrar el ciclo de la serie composer. Composer es un gran sistema, es una aplicación PHP que maneja las versiones de los paquetes PHP, con su ayuda podemos descargar y actualizar paquetes y proyectos. Es muy sencillo, ya lo hemos visto antes.

En este post voy a asumir que has hecho uso de esta aplicación (composer) instalando laravel, algún paquete o que has creado una breve aplicación. Es difícil hacerte llegar estos conceptos si no ha sucedido lo previamente mencionado.

Inicios de composer.json

Cuando comenzamos un proyecto tenemos a la mano al archivo composer.json, aquí encontramos una lista con los paquetes y versiones que usará nuestra aplicación, pero en la medida que avanzamos vemos que nos aparece un archivo llamado composer.lock y por eso estamos aquí. Este archivo (composer.json) es un plano inicial y breve, es una lista jerárquica de dependencias y aplicaciones. Cuando comenzamos no tenemos un archivo composer.lock, este aparece en el momento que ejecutamos el comando composer install. En otras palabras, instalamos los paquetes y el misterioso archivo composer.lock nace y tiene vida.

Por favor, puedes ir a mirar este archivo antes de continuar... ¡es un archivo inmenso!

El archivo composer.lock

Revelemos el misterio, en composer.json tenemos una breve lista con las versiones aproximadas de dependencia que Composer debe instalar, y el archivo composer.lock tiene el registro exacto de las versiones de dependencia que se han instalado.

Si fuiste a mirar el archivo composer.lock habrás notado que es un super archivo, y eso se debe a que tiene item a item la versión precisa que se instaló cuando Composer siguió las instrucciones de archivo composer.json. Este archivo también realiza un seguimiento de todas las versiones de las dependencias de sus dependencias. Tienes todo aquí, dependencias de dependencias de dependencia que a su vez puede tener dependencias... Bueno, entiendes la idea.

Todo, absolutamente todo tu sistema a nivel jerárquico de dependencias tendrá sus versiones en el archivo composer.lock.

Lo que puedes estarte preguntando es ¿para que me sirve?... Y esto es bastante simple. Si eliminas a la carpeta vendor a su vez estarás elimimando todos los paquetes y dependencias. Entonces no te preocupas, solo ejecutas el comando composer install y composer verá que tienes un archivo llamado composer.lock. Entonces en lugar de encontrar versiones compatibles de su dependencias para completar el archivo composer.json, él instalará la versión exacta de su dependencias como se define en el archivo composer.lock.

Esto significa que tenemos la versión exacta de nuestras dependencias que teníamos instaladas antes borrar la carpeta vendor. Y eso si resulta bastante útil.

Otra pregunta, ¿qué causaría que el archivo composer.lock cambie?

Este archivo cambia si ejecutas el comando composer update y no recomiendo hacerlo a cada rato, debes usar composer install para instalar tu nuevo paquete sin actualizar las versiones de tus otros paquetes. Esto sería mucho más seguro y evitamos fallas por actualizar nuevos paquetes y dependencias.

Usa composer update sabiendo con claridad lo que estás haciendo

Libro de TDD - Lo que debes saber
Compra el libro
TDD lo que debes saber

Newsletter

Únete a más de 4.000+ personas y no te pierdas nunca más de las nuevas clases, tips, tutoriales y más cada semana.

    No enviamos spam. Puedes darte de baja en cualquier momento.