Instala CakePHP como un submodulo con git
En este artículo os voy a mostrar como montar CakePHP mediante git con unos simples pasos, a priori te parecerán muchos pero en realidad son muy simples y no creo que tardes más de 5 minutos.
El truco está en instalar CakePHP como un submodulo con git, de manera que el core del framework siempre lo podemos tener actualizado y linkado al repositorio oficial de CakePHP con git
Primera parte agregar CakePHP como un submódulo de git
1) Ubícate donde quieras montar el proyecto, en /var/www/html, en tu /home o donde quieras.
2) Crea una nueva carpeta
1
mkdir <nombre-del-proyecto>
Entra en la carpeta
1
cd <nombre-del-proyecto>
3) Inicia el repositorio con git
1
git init
Esto te mostrará un mensaje similar al siguiente: Initialized empty Git repository in /path-completo/.git/
4) Ahora llega la magia. Añade CakePHP como un submódulo
1
git submodule add git://github.com/cakephp/cakephp.git cakephp
Esto te mostrará por pantalla algo similar a esto:
Cloning into ‘cakephp’… remote: Counting objects: 174971, done. remote: Compressing objects: 100% (35369/35369), done. remote: Total 174971 (delta 136329), reused 170237 (delta 133011) Receiving objects: 100% (174971/174971), 24.33 MiB | 1.46 MiB/s, done. Resolving deltas: 100% (136329/136329), done.
Cuando haya terminado actualiza y registra el módulo
1
git submodule update --init
Segunda parte haz un bake y setup de tu proyecto
1) Situado en el root el proyecto, ejecuta el comando bake de CakePHP.
1
cakephp/lib/Cake/Console/cake bake
Esto te mostrará por pantalla una serie de pasos que tendrás que ir completando.:
1.1) pedro@pedro:~$ cakephp/lib/Cake/Console/cake bake
Welcome to CakePHP v2.2.5 Console
App : proyecto-prueba Path: /home/pedro/proyecto-prueba/ ————————————————————— What is the path to the project you want to bake? [/home/pedro/proyecto-prueba/myapp] >
Pulsa ENTER o introduce un nombre. Yo suelo poner app
1.2 )
What is the path to the directory layout you wish to copy? [/home/pedro/proyecto-prueba/cakephp/lib/Cake/Console/Templates/skel] >
Pulsa ENTER o introduce un nombre. Suelo pulsar ENTER
1.3)
Skel Directory: /home/pedro/proyecto-prueba/cakephp/lib/Cake/Console/Templates/skel Will be copied to: /home/pedro/proyecto-prueba/app ————————————————————— Look okay? (y/n/q) [y] >
Pulsa y
1.4 ) Ahora te pide los datos para acceder a la base de datos. OJO! Previamente tienes que haber creado una base de datos. Yo he creado una en MySQL.
Your database configuration was not found. Take a moment to create one.
Database Configuration: ————————————————————— Name: [default] >
Se suele dejar default, pulsa ENTER
Datasource: (Mysql/Postgres/Sqlite/Sqlserver) [Mysql] >
Si usas MySQL pulsa ENTER
Persistent Connection? (y/n) [n] >
Recomendado es que no, pulsa ENTER
Sigue el resto de pasos, para agregar el Host de la base de datos, el puerto, el usuario, y la contraseña.
Al final de todo te debería aparecer el siguiente mensaje
Creating file /home/pedro/proyecto-prueba/app/Config/database.php
Wrote /home/pedro/proyecto-prueba/app/Config/database.php
Ajuste final
- Si usas Apache deberás incluir un archivo .htaccess en la carpeta root de tu proyecto. El resto de archivos .htaccess se crearán con el bake
1
2
3
4
5
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
- Da permisos de escritura a la carpeta app/tmp siempre y cuando el propietario de la carpeta sea apache
1
sudo chmod 755 -R app/tmp
Cualquier duda o pregunta, no dudes en hacerlo dejando un comentario!
Y ya sabes para más información de CakePHP échale un ojo a su documentación http://book.cakephp.org/2.0/en/index.html