DRUPAL Instalación
Sumario
Instalación do Lampp
Importante: Se tedes instalado previamente o servidor web apache ou o servidor de bases de datos mysql, deberedes parar os servizos coa orde: sudo service apache2 stop sudo service mysql stop
- É a versión Linux dun paquete denominado XAMPP.
- Unha vez instalado teremos de vez: Servidor Web Apache, servidor de base de datos Mysql, PHP e Perl.
- Recomendo instalar separadamente ditos programas xa que pode dar problemas coas versións do PHP.
- Para instalalo teremos que:
- Descargar a versión que nos interese dende este enlace.
- Podemos facelo coa seguinte orde (é un exemplo:: sudo wget https://www.apachefriends.org/xampp-files/5.6.24/xampp-linux-x64-5.6.24-1-installer.run
- Se o descargado a un tar.gz:
- Descomprimir o arquivo baixado coa orde: sudo tar xvfz xampp-linux-1.8.0.tar.gz -C /opt.
- Se o descargado e un arquivo sh:
- Cambiar os permisos sobre o arquivo para poder executalo: sudo chmod 755 xampp-linux-x64-5.6.24-1-installer.run
- Executar o arquivo: sudo ./xampp-linux-x64-5.6.24-1-installer.run
- Unha vez descargado podemos iniciar Lampp (inicia o servidor web e o mysql) coa orde: sudo /opt/lampp/lampp start.
- Se queremos ver o estado dos servidores podemos executar a orde: sudo /opt/lampp/manager-linux-x64.run &.
- Aparecerá a seguinte pantalla onde debemos ter iniciados os servizos de Apache e Mysql.
- Fixarse que dende o frontal anterior podedes acceder aos arquivos de configuración de Apache e Mysql que se atopan respectivamente en /opt/lampp/etc/httpd.conf e /opt/lampp/etc/my.cnf
Instalación do Apache
- Máis información neste enlace.
- Nota: Se tedes instalado Lampp é necesario que os servizos de Apache e Mysql estean parados.
- Nunha consola de comandos executaremos:
1 sudo apt-get update 2 sudo apt-get install apache2
- Unha vez instalado aparecerá a seguinte pantalla se no navegador de Internet escribimos na URL: http://localhost.
- Por defecto apache vai buscar as páxinas que se atopan no cartafol: /var/www/html.
Arquivos de configuración
- IMPORTANTE: Calquera cambio nos arquivos de configuración de apache será necesario reiniciar o servizo coa orde:
1 service apache2 restart
- Arquivo de configuración: apache2.conf
- Dito arquivo pode variar de nome e lugar dependendo da versión de Apache utilizada.
- Para saber a versión de Apache podemos escribir dende o terminal: sudo apache2 -version producindo unha saída como a seguinte:
- Nesta versión o arquivo de configuración principal atópase:
- Cartafol /etc/apache2/
- Nome: apache2.conf
- Este arquivo vai cargar a súa vez outros arquivos de configuración que veremos despois.
- Dentro deste arquivo os parámetros máis importantes son:
- ServerRoot: É o lugar onde está 'apuntando' fisicamente o servidor web. É o cartafol onde vai buscar as páxinas.
- User ${APACHE_RUN_USER}
- Group ${APACHE_RUN_GROUP}
- O servidor web execútase utilizando un usuario da máquina onde se atopa instalado e cos permisos de dito usuario.
- Para saber os valores de ditas variables podemos editar o arquivo /etc/apache2/envars:
- export APACHE_RUN_USER=www-data
- export APACHE_RUN_GROUP=www-data
- Se non temos acceso a ditos arquivos podemos saber o usuario e grupo coa orde:
1 ps aux | grep apache # para Apache 2.x 2 ps aux | grep httpd # para Apache 1.x
- O arquivo httpd.conf carga a súa vez outros arquivos de configuración.
- Arquivo de configuración: ports.conf
1 Listen 80 2 3 <IfModule ssl_module> 4 Listen 443 5 </IfModule> 6 7 <IfModule mod_gnutls.c> 8 Listen 443 9 </IfModule> 10 11 # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
- Liña 1: Indicamos en que porto vai escoitar o servidor web o tráfico non seguro. Por defecto é o 80.
- Liñas 4 e 8: Se temos cargado o módulo que permite tráfico SSL aquí indicamos o porto onde vai escoiter (por defecto o 443)
- Outros arquivos de configuración: /etc/apache2/conf-enable/
- Todo o que haia neste cartafol será 'cargado' polo apache. Normalmente son enlaces simbólicos (accesos directos en Windows) a arquivos que se atopan fisicamente en /etc/apache2/conf-avaliable.
Sitios Web
- Un servidor apache vai apuntar fisicamente por defecto a un cartafol (no noso caso a /var/www/html/).
- Pero ademais pode:
- Ter varios sitios web (URL) apuntando ao mesmo servidor web.
Varios sitios web apuntando ao mesmo servidor web
- Isto se consegue no arquivo de configuración /etc/apache2/sites-available/000-default.conf
- Dito arquivo é cargado xa que existe un enlace simbólico no cartafol: /etc/apache2/sites-enable/
- Calquera enlace simbólico que poñamos nese cartafol levará consigo que Apache cargue dito arquivo de configuración.
- Se editamos dito arquivo podemos ver:
1 <VirtualHost *:80> 2 ServerAdmin webmaster@localhost 3 DocumentRoot /var/www/html 4 5 ErrorLog ${APACHE_LOG_DIR}/error.log 6 CustomLog ${APACHE_LOG_DIR}/access.log combined 7 </VirtualHost> 8 9 <Directory /var/www/html> 10 Options Indexes FollowSymLinks 11 AllowOverride All 12 </Directory>
- Liña 1: Sección VirtualHost onde indicamos que imos escoitar no porto 80 todas as peticións da calquera URL que chegue ao servidor web.
- Liña 3: Indicamos onde se atopa fisicamente o cartafol onde apunta este virtualhost.
- Nas liñas 9-12 fan referencia a unha serie de parámetros que son aplicados sobre o cartafol ao que estar apuntando o virtualhost. Máis información neste enlace.
- Comentar que a liña 11 indica que os parámetros de o arquivo de configuración do Apache poden ser reemplazados polos que se atopen nun arquivo de nome .htaccess (necesario para os aloxamentos compartidos).
- Sempre temos que ter unha sección <Directory> por cada <VirtualHost>.
ServerName
- ServerName é un parámetro que se engade no arquivo de configuración de Apache e lle indica a IP ou o nome web co que vai a recibir peticións web. Pódese poñerse a nivel 'global' no arquivo httpd.conf ou dentro da sección <virtualhost>.
- Normalmente para ter un sitio web teremos que ter contratado un dominio válido en Internet que estará apuntando a IP onde temos instalado o servidor Web Apache.
- Como o estamos a facer localmente, engadiremos ao arquivo /etc/hosts un dominio 'ficticio' (imos engadir dous):
1 127.0.0.1 localhost 2 127.0.1.1 angel-VirtualBox www.meusitio.es www.outrositio.es
- Agora se facemos un ping dende un terminal: ping www.meusitio.es debería contestar coa ip 127.0.0.1
- Engadimos a liña: ServerName www.meusitio.es ao arquivo httpd.conf e reiniciamos o servizo.
- Agora deberíamos poder poñer na URL do navegador: http://www.meusitio.es e cargará a páxina por defecto.
- Sen embargo se poñemos: http://www.outrositio.es tamén a carga. Isto é debido a que na sección <virtualhost> estamos a indicar que cargue calquera URL que veña ao porto 80. Cambiemos iso:
1 <VirtualHost www.meusitio.es:80> 2 ServerAdmin webmaster@localhost 3 DocumentRoot /var/www/html 4 5 ErrorLog ${APACHE_LOG_DIR}/error.log 6 CustomLog ${APACHE_LOG_DIR}/access.log combined 7 </VirtualHost>
- Reiniciar o servizo.
- Ter alias que veñen ser nomes que van a continuación da URL pero que apuntan fisicamente a outro sitio no disco.
- Por exemplo, se poñemos http://www.meusitio.es/tenda, isto iría ao cartafol /var/www/html/tenda, pero se no arquivo de configuración de apache creo un alias de nome 'tenda' podo apuntar a outro cartafol diferente.
- Para crear un alias:
- Editamos o arquivo /etc/apache2/sites-available/000-default.conf.
- Engadimos dentro da sección <virtualhost>: alias /nome_alias /cartafol_onde_apunta
- Para crear un alias:
- Lembrar reiniciar o servizo.
- Máis exemplos neste enlace.
Instalación e configuración do Mysql
Instalación
- Executaremos as seguintes ordes nun terminal:
1 sudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql
- Aparecerá unha pantalla onde se nos solicita o password que terá o usuario 'root'. Lembrade escoller un password complexo.
- Agora debemos activar o mysql coa orde:
1 sudo mysql_install_db
- Executaremos un script de setup coa orde;
1 sudo /usr/bin/mysql_secure_installation
- Preguntará:
- Pola contrasinal do usuario root (introducida anteriormente): A escribiremos.
- Change the root password? [Y/n]: Se queremos cambiar o password de root: premeremos 'no'.
- Remove anonymous users? [Y/n]: Se queremos eliminar o acceso anónimo ao Mysql: Contestaremos que si (y).
- Disallow root login remotely?: Contestar y.
- Reload privilege tables now? [Y/n]: Contestar y.
Instalación do frontend MysqlWorkBech
- Nota: Máis información neste enlace.
- O MysqlWorkBench é unha ferramenta gráfica que vai permitir xestionar o Mysql así como as súas bases de datos.
- Para instalalo escribiremos a seguinte orden dende un terminal: sudo apt-get install mysql-workbench
- Ao facelo teremos un novo programa como amosa a seguinte imaxe (tamén podemos invocalo dende o terminal escribindo: sudo mysql-workbench):
- Para poder utilizalo teremos que crear unha conexión ao servidor Mysql instalado previamente. Para iso seguiremos os seguintes pasos:
- Utilizando o MySqlWorkBench
Configuración
- Cando instalemos o Drupal, este vai facer uso dunha base de datos. Imos crear dita base de datos e un usuario que teña permisos sobre dita base de datos.
Con XAMPP => MysqlQueryBrowser
- Creando unha base de datos e un usuario para drupal
Usando xampp: Abrimos un navegador e escribimos na url: http://localhost e seleccionamos o elemento de menú phpMyAdmin.
Con MysqlWorkBench
- Faremos os seguintes pasos para crear unha base de datos en Mysql e un usuario con acceso a mesma.
- Isto o necesitará Drupal para poder funcionar. Deixado por tanto anotados o nome de usuario, password e noma da base de datos (schema).
- Creando unha base de datos e un usuario en Mysql
Instalación do PHP
- Drupal require o PHP 5.5.9 como vimos nos requirimentos mínimos.
- Para instalar o PHP escribiremos o seguinte nunha consola:
1 sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
- Actualizaremos o arquivo dir.conf e engadiremos index.php ao principio:
- sudo nano /etc/apache2/mods-enabled/dir.conf
1 <IfModule mod_dir.c> 2 DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm 3 </IfModule>
- Para comprobar se está ben instalado podemos crear un arquivo: /var/www/html/index.php
1 <?php 2 phpInfo(); 3 ?>
- E cargar a páxina dende o navegador escribindo na URL: http://localhost/index.php.
- Obteremos o seguinte:
Módulos en PHP
- Php ten a posibilidade de instalar 'módulos' para ampliar as súas funcionalidades.
- Para obter a lista de módulos: sudo apt-cache search php5-
- Para instalar un dos módulos da lista: sudo apt-get install nome_do_modulo
- No noso caso é necesario instalar o módulo php5-gd. Escribiremos o seguinte código:
1 sudo apt-get install php5-gd 2 sudo service apache2 restart
Instalación do Drupal
Pasos previos
- Primeiro debemos descargar a versión do drupal que queiramos.
- Accedemos a https://www.drupal.org/project/drupal e escollemos a versión a descargar.
- Graficamente, escollemos a versión dende o navegador e a descargamos.
- Dende consola coa orden: wget https://ftp.drupal.org/files/projects/drupal-8.1.8.tar.gz
- Unha vez descargada a descomprimimos:
- Graficamente, premendo dúas veces e descomprimíndoa.
- Dende consola coa orde: tar -zxvf drupal-8.1.8.tar.gz
- Onde se move o cartafol descomprimido do drupal.
- Se estamos a utilizar xampp deberemos movelo ao cartafol /opt/lampp/htdocs/
- Se estamos a utilizar un servidor web (como apache) deberemos movelo ao cartafol onde cargue os sitios web. No noso caso será: /var/www/html/.
- Notas::
- Cando se descomprime, normalmente teremos o nome 'drupal-8.1.8'. Podemos cambiarlle o nome a ese cartafol por 'drupal' pois despois o usaremos na URL do navegador.
- O máis lóxico é que se implantades unha solución 'real' de Drupal teredes un dominio contratado. O recomendable é que o dominio apunte directamente a Drupal sen ter cartafoles polo medio.
- Así, o dominio http://www.meudominio.es debería apuntar a /var/www/html/drupal
- Existen formas (as empresas de aloxamento o permiten) de facer que un subdominio apunte a outro cartafol, así poderíamos ter:
- http://www.meudominio.es => /var/www/html/WEB
- http://www.meudominio.es/tenda => /var/www/html/DRUPAL (neste caso poderíamos ter unha tenda virtual configurada con Drupal).
- Neste curso imos facelo sobre un cartafol dentro do sitio web, de forma que, se tivésemos un dominio:
- http://www.meudomonio.es => /var/www/html
- http://www.meudomonio.es/drupal => /var/www/html/drupal (cartafol dentro do dominio).
- Esta opción non é recomendable.
- Copia do arquivo de configuración.
- Drupal necesita un arquivo de configuración de nome settings.php que se atopa no cartafol do drupal/sites/default (en xampp sería /opt/lampp/htdocs/drupal/sites/default e en apache /var/www/html/drupal/sites/default).
- Deberemos copiar o arquivo default.settings.php que se atopa nese cartafol e copialo có nome settings.php.
- Deberemos cambiar os permisos do arquivo settings.php para que poida ser modificado. En Linux, poñeremos: chmod 777 settings.php
- Nota: Este arquivo é moi importante xa que nel se garda non só parámetros de configuración do propio Drupal, se non o usuario, password e nome da base de datos Mysql. Cando se remate a instalación se indicará a necesidade de cambiar os permisos para que ninguén poida obter información do arquivo.
- Arquivos do idioma español.
- Durante a instalación podemos facer a instalación no idioma español. Será necesario ter creados uns cartafoles que por defecto non veñen.
- Crear o cartafol /cartafol_drupal/sites/default/files e darlle permisos de escritura chmod 2740 /cartafol_drupal/sites/default/files (có 2 facemos que os novos arquivos terán os permisos indicados).
- Crear o cartafol /cartafol_drupal/sites/default/files/translations.
- Cambiando os permisos.
- Se o fixemos graficamente, o dono dos arquivos será o teu usuario, e se o fixeches dende consola será root (se usaches a orde sudo).
- Imos cambiar o dono para que sexa o usuario que utiliza o apache para conectarse. Este é www-data (noutras distribucións teriades que identificar con que usuario se conecta) .
- Dende unha consola e con permisos sudo, executamos a orde: chown -R www-data:www-data /drupal sendo 'drupal' o cartafol onde se atopa drupal.
- Para saber o nome do usuario do servidor web Apache podemos escribir o seguinte nun terminal:
1 ps aux |grep apache # para Apache 2.x 2 ps aux |grep httpd # para Apache 1.x
- Como salida teremos algo parecido a isto:
- Activación do opcache.
- Extensión de PHP para mellorar o tempo de xeración das páxinas php.
- En Lampp: Temos que editar o arquivo php.ini (se atopa en /opt/lampp/etc/php.ini) e engadir (ou descomentar a liña no caso de XAMPP): zend_extension=opcache.so.
- En apache: Debemos editar o arquivo /etc/php5/apache2/php.ini e cambiar o seguinte código;
1 ::[opcache] 2 ; Determines if Zend OPCache is enabled 3 ;opcache.enable=0
- Por
1 ::[opcache] 2 ; Determines if Zend OPCache is enabled 3 opcache.enable=1
- Despois deberemos reiniciar o servidor apache para que colla a nova configuración coa orde: sudo service apache2 restart
- Activación do módulo mod_rewrite cunha instalación Apache (non Lampp).
- Nota: Máis información neste enlace.
- Dito módulo serve para converter url en Drupal (ou noutros programas) do tipo "http://www.example.com/?q=node/83" a "http://www.example.com/node/83" permitindo ter URL máis amigables de ler e facendo que os buscadores poidan indexar ditas páxinas.
- Para activalo deberemos escribir o seguinte (se estamos nun servidor compartido seguramente o módulo xa estará activo):
1 sudo a2enmod rewrite 2 sudo service apache2 restart
- Agora debemos indicar ao servidor Web que substitúa as URL por un formato máis amigable.
- No servidor Web deberá estar indicada a directiva que indica que se utilice o que estea posto no arquivo .htaccess do Drupal. No noso caso o indicaremos coas seguintes liñas (non servidor compartido xa estaría feito):
- * Editamos o arquivo /etc/apache2/sites-available/000-default.conf
- Escribimos o seguinte código:
- * Editamos o arquivo /etc/apache2/sites-available/000-default.conf
1 .... 2 </VirtualHost> 3 4 <Directory /var/www/html> 5 Options Indexes FollowSymLinks 6 AllowOverride All 7 </Directory>
Instalación
- Instalación de Drupal dende o navegador
Escribimos na url do navegador a seguinte dirección: http://localhost/drupal sendo drupal o nome do cartafol que eliximos cando o movimos ao cartafol htdocs.
No seguinte paso introduciremos os datos da base de datos mysql (nome da base de datos, usuario e password) usados anteriormente. Fixarse que as 'Opcións avanzadas' están despregadas para que vexades a opción 'Prefijo del nombre de la tabla'. Esta opción se usuaria se ides utilizar unha base de datos Mysql xa existente e tedes táboas de outras aplicacións nese base de datos. Entón poñeríamos un prefixo (por exemplo drupal) e todas as táboas de drupal tería de nome drupal_nome. Desta forma poderiades distinguir cales son de drupal e cales das outras aplicacións...
Poñendo na Url do navegador: http://localhost/drupal xa podemos acceder ao sitio web do drupal.
Comprobacións trala instalación
- NOTA: Esta sección está asociada á realización do EXERCICIO 1.
- Unha vez entramos no drupal có usuario administrador (creado durante a instalación).
- Comprobacións de que todo estea correcto
- Para solucionalo deberemos editar o arquivo de configuración de drupal (que se atopa no cartafol do drupal/sites/default (en xampp sería /opt/lampp/htdocs/drupal/sites/default).
- Unha vez editado ao final do arquivo poñeremos as seguintes liñas:
1 $settings['trusted_host_patterns'] = array( 2 '^www\.example\.com$', 3 );
- Onde deberemos substituír www.example.com polo noso dominio. Respetada os caracteres '\' entre cada parte do dominio e o '$' no que acaba.
- No caso de estar a desenvolver localmente podemos substituír o dominio pola cadea localhost: '^localhost$',
- Unha vez cambiado podemos ir outra vez a o Informe de Estado e comprobar como xa non temos ningún indicador de perigo.
Modificando a directiva RewriteBase
- O servidor web Apache 'apunta' a un determinado cartafol do disco duro. Así, por defecto, cando escribimos na URL do navegador 'http://meusitio.es' estaremos 'apuntando' a '/var/www/' (antes de Ubuntu 14.04) ou '/var/www/html/' (Ubuntu 14.04 e posteriores).
- Se instalamos Drupal dentro do cartafol /var/www/html/drupal deberemos modificar o arquivo /drupal/.htaccess e descomentar a seguinte liña:RewriteBase /drupal (quitar #), sendo '/drupal' o cartafol onde estamos instalando Drupal.
- Se usamos un alias de Apache da forma: 'http://meusitio.es/alias' deberemos facer o indicado anteriormente: RewriteBase /alias
- Se levamos o drupal ao raíz do sitio web, entón podemos poñer: RewriteBase /
- No noso caso:
- Modificamos agora o arquivo /var/www/html/drupal/.htaccess e descomentamos a liña indicada:
1 # Modify the RewriteBase if you are using Drupal in a subdirectory or in a 2 # VirtualDocumentRoot and the rewrite rules are not working properly. 3 # For example if your site is at http://example.com/drupal uncomment and 4 # modify the following line: 5 RewriteBase /drupal
- Sendo /drupal o cartafol onde está instalado Drupal no servidor web (/var/www/html/).
- Reiniciamos o servidor Apache: sudo service apache2 restart
Configuración de permisos nos cartafoles de Drupal
- NOTA: Esta sección está asociada á realización dun EXERCICIO.
- Máis información neste enlace.
- Información dos diferentes permisos que se poden otorgar en Linux neste enlace.
- Grupo de Drupal sobre seguridade neste enlace.
- Se non temos asinados uns permisos adecuados a nivel de cartafol e de arquivos, podemos ter múltiples buratos de seguridade no noso sitio.
- Como vimos anteriormente, o arquivo '/sites/default/settings.php' debería ter o permiso 444=>rrr (podería ter 440=>r-- se sabemos que o servidor web (no noso caso apache nun Linux con Ubuntu) usa como usuario (no noso caso www-data) un que é propietario do arquivo installation.php).
- O resto de cartafoles e arquivos debería ter permisos de lectura pero non de escritura.
- Como norma xeral, poderíamos dicir que os cartafoles debería ter permisos 755 e os arquivos permisos 644, quitando as excepcións do cartafol /drupal/sites/default/files e o arquivo de configuración /drupal/sites/default/installation.php.
- find /drupal/ ! -type d -exec chmod 644 {} \;
- find /drupal/ -type d -exec chmod 755 {} \;
- Nota: Estes permisos xa deberían estar postos por defecto. Se os aplicades teredes que cambiar os permisos nas excepcións comentadas anteriormente.
- Para non ter que facer a comprobación manualmente podemos facer uso dun módulo que verifique que os permisos sexan os correctos. A continuación amosamos dous módulos de exemplo.
- Un posible script para cambiar os permisos de Drupal para que sexa totalmente seguro (isto o faríamos unha vez teñamos o Drupal funcionando e sen necesidade de cambiar nin instalar nada máis):
1 cd /RUTA_INSTALACION_DRUPAL/ -------------------(A CAMBIAR)------------------------ 2 chown -R www-data:www-data * 3 find . ! -type d -exec chmod 444 {} \; 4 find . -type d -exec chmod 555 {} \; 5 6 7 chmod -R 2740 sites/default/files 8 chmod 440 sites/default/settings.php 9 find . -name .htaccess -exec chmod 444 {} \;
- Se imos a estar traballando e instalando novas funcionalidades poderíamos aplicar este script:
1 cd /RUTA_INSTALACION_DRUPAL/ -------------------(A CAMBIAR)------------------------ 2 chown -R www-data:www-data * 3 find . ! -type d -exec chmod 644 {} \; 4 find . -type d -exec chmod 755 {} \; 5 6 7 chmod -R 2740 sites/default/files 8 chmod 440 sites/default/settings.php 9 find . -name .htaccess -exec chmod 444 {} \;
Instalación de Git
- Git é un software de control de versións.
- Podedes descargar o software para as diferentes plataformas neste enlace.
- Permite ter diferentes versións de proxectos sobre os que se fan modificacións no seus arquivos
- Garda ditos arquivos antes de facer as modificacións permitindo 'volver' ao estado anterior a facer ditas modificacións.
- Tamén permite facer traballo colaborativo entre diferentes persoais traballando á vez sobre o mesmo proxecto.
- Nos o imos utilizar para gardar versións de Drupal antes de instalar novos módulos ou funcionalidades por se temos que volver a atrás en caso de problemas.
- Para instalalo temos que executar a seguinte orde dende unha consola ou terminal:
1 apt-get install git
- Unha vez instalado temos que crear un repositorio. Isto ven ser o lugar onde imos gardas as diferentes versións do Drupal.
- Para inicialo temos que situarnos no raíz do sitio web de drupal, no noso caso: /var/www/html/drupal e executar a seguinte orde:
1 git init
- Obteremos o seguinte resultado:
- Creouse un novo cartafol: /var/www/html/drupal/.git
- Para o seu funcionamento, git debe ter rexistrado unha conta de correo e un nome de usuario. Podemos ter o mesmo para todos os proxectos ou podemos especificar nomes diferentes.
- No noso caso, as ordes son:
1 git config --global user.name "O teu nome" 2 git config --global user.email oteucorreo@prueba.es
- Agora debemos engadir os arquivos ao repositorio. Agora mesmo está baleiro, polo que immos engadir todos os arquivo do cartafol drupal (escribide o punto despois do parámetro -A):
1 git add -A .
- Agora podemos ver os arquivos 'engadidos' ao repositorio:
1 git status
- Fixarse que saen todos os arquivos de Drupal, pero estes arquivos non están CONFIRMADOS. En git, ata que non se confirmen non son 'incluídos' no repositorio.
- É importante lembrar que ata non se faga un commit dos arquivos (confirmación) estes non serán gardados realmente e non poderemos ir atrás no estado de Drupal.
- Para confirmar os arquivos executaremos a seguinte orde:
1 git commit -m "Drupal acabado de instalar"
- Se agora facemos un git status indicará que non hai nada novo que confirmar:
1 git status
- Resultado
Recuperando un estado anterior
- Crear un novo arquivo dentro do sitio web de Drupal. No exemplo eu vou crear un de nome 'proba.txt'.
- Se agora executades a orde git status podedes observar como informa de que hai un arquivo modificado:
- Agora imos engadir dito arquivo ao repositorio, como fixemos antes:
- Imos ver agora como podemos restaurar o sitio web Drupal a un estado anterior.
1 git add proba.txt
- Nota: Podemos engadir todos os arquivos de vez có parámetro -A como fixemos ao principio.
- Importante Tedes que facer o add sempre antes de facer o commit, xa que se modificados un arquivo despois de facer o add, se gardará a versión anterior, non a modificada.
- Se agora facemos un git status veremos que indica que hai que confirmar un novo arquivo:
- Para confirmar o arquivo volveremos a executar a orde commit:
1 git commit -m "Drupal acabado de instalar cun arquivo (proba.txt) novo"
- Cambiade o contido do arquivo e volvede a facer un add e un commit.
1 git commit -m "Drupal acabado de instalar cun arquivo (proba.txt) novo e modificado"
- Nota: Podedes facer non só paso engadir-confirmar coa orde: git commit -a -m "Drupal acabado de instalar cun arquivo (proba.txt) novo e modificado"
- Se agora executamos a orde: git log veremos os commit realizados cun ID que os identifica.
- Se engadimos a opción -p á orde git log, amosará as diferenzas entre as versións.
- Para 'revertir' o estado a un anterior só temos que anotar o ID do estado ao que queremos volver e executar a orde:
1 git checkout id_copiado_do_paso_anterior
- Tamén ides poder aloxar repositorios remotos (aloxados en Internet) como en GitHub. Ditos repositorios son públicos (hai que pagar para ter un privado).
- Podedes consultar un pequeno manual de como usalo: https://git-scm.com/book/es/v1/Fundamentos-de-Git-Trabajando-con-repositorios-remotos
-- Ángel D. Fernández González -- (2016).
