Guía para usar GIT en Dreamhost

Esta es una guía muy rápida para configurar GIT en Dreamhost. En esta guía revisaremos también como trabajar con nuestro servidor local y nuestro servidor remoto a través de GIT.

Configurando GIT

  1. Debes tener un dominio en Dreamhost ( ̄(エ) ̄)
  2. El usuario que utilizas para subir archivos (ftp) debe ser de tipo Shell, para poder acceder mediante ssh.
  3. Abre la terminal, y accede mediante ssh al servidor con esta fórmula: ssh nombredeusuario@nombredelsitio, en este caso es canvasftpuser@canvas.elcoruco.com
    Captura de pantalla 2013-02-06 a la(s) 17.26.44
  4. Confirma que se quiere acceder al servidor remoto y poner el password cuando se solicite (es recomendable copiar y pegar)
    Captura de pantalla 2013-02-06 a la(s) 17.27.13
  5. Al acceder, habrá tres carpetas visibles: Maildir, logs y una carpeta con el nombre del sitio (esta carpeta puede tener distinto nombre, si al configurar el sitio así se decidió). Para verlas, basta con escribir: ls
    Captura de pantalla 2013-02-06 a la(s) 17.37.44
  6. Ahora hay que crear una nueva carpeta que contendrá el repositorio de GIT. Hay que escribir en la línea de comando: mkdir elnombredelacarpeta (en este caso será: mkdir canvas_git_repo)
    Captura de pantalla 2013-02-06 a la(s) 17.38.12
  7. Una vez creado el directorio, hay que crear ahí un repositorio de git mediante: git –bare init elnombredelacarpeta (en este caso: git –bare init canvas_git_repo)
    Captura de pantalla 2013-02-06 a la(s) 17.39.51
  8. Creado el repositorio, este servirá como centro de respaldo y actualización para el código del sitio.

Trabajo dentro del directorio web

Para poder acceder al contenido (tanto para obtenerlo como para actualizarlo), hay que crear una copia de trabajo dentro del directorio web, es decir, dentro del directorio que tiene el nombre de la página.

  1. Para facilitar las cosas, hay que borrar el directorio web (y apuntar el nombre) para después crearlo de nuevo como un directorio con GIT. Para eliminar el directorio, hay que teclear: rm -rf elnombredeldirectorio (para este ejemplo: rm -rf canvas.elcoruco.com)
    Captura de pantalla 2013-02-06 a la(s) 17.52.53
  2. Una vez eliminada la carpeta web, hay que clonar el repositorio recien creado en una carpeta con el mismo nombre que tenía la carpeta que eliminamos: git clone elnombredelacarpetaconelrepo elnombredelacarpetaweb (en este caso: git clone canvas_git_repo canvas.elcoruco.com)
    Captura de pantalla 2013-02-06 a la(s) 18.22.10
  3. Una vez clonado el repositorio, se puede comenzar a usar GIT normalmente dentro de la carpeta web.

Sincronizando nuestro servidor local con nuestro directorio web

  1. Ahora supongamos que tenemos un servidor local en el cual desarrollaremos nuestro sitio, para después subirlo al repositorio de Dreamhost, y de ahí actualizar la carpeta web.
  2. Lo primero que necesitamos es tener GIT instalado en la mac (en la línea de comando). Para saber si está disponible, hay que teclear lo siguiente en la terminal (sin estar conectado a dreamhost!): which git (si está disponible, en la línea siguiente aparece la ruta en la que está instalado, y si no, aparece un mensaje de error). En caso de no tener disponible GIT, se puede descargar de la siguiente dirección: http://git-scm.com/download/mac
  3. Una vez que estamos seguros de que contamos con GIT (which git regresa una dirección), hay que decidir en dónde queremos que quede guardado el repositorio de GIT en nuestro equipo. En este caso, quiero guardar una copia dentro de mi carpeta sites. 15 la instruccion para clonar el repositorio es la siguiente: git clone ssh://elnombredeusuario@elnombredelsitio/home/elnombredeusuario/elnombredelacarpetaconelrepooriginal elnombreparalacarpetalocal (para este caso: git clone ssh://canvasftpuser@canvas.elcoruco.com/home/canvasftpuser/canvas_git_repo sites/canvas_local_test). Al darle enter al comando, debe pedir el password para completar la conexión vía ssh.
  4. Si se creó el repositorio, debe haber una carpeta llamada canvas_local_test dentro de sites (o donde sea que hayas seleccionado crear el repositorio local)
  5. Ahora, para probar cómo funciona entre nuestro equipo y el servidor, hay que crear un archivo de texto que se llame index.html (con cualquier cosa dentro)
  6. Para subir este archivo, primero hay que registrar los cambios en GIT. para esto, hay que entrar mediante la terminal a nuestra carpeta recién creada usando la instrucción cd ladireccióndelacarpeta. (en este caso cd sites/canvas_local_test).
  7. Ya en la carpeta del repositorio, hay que agregar el nuevo archivo: git add index.html y después guardarlo y comentarlo git commit -m “listo mi primer archivo :D”
  8. Para subir el cambio al servidor, se utiliza: git push –all y después se pone el password, y listo.
  9. Finalmente, para ver el archivo en el sitio web, hay que entrar al sitio mediante ssh, y entrar a la carpeta web: ssh canvasftpuser@canvas.elcoruco.com cd canvas.elcoruco.com (ya en el servidor)
  10. Ya en la carpeta, hay que escribir la siguiente instrucción: git pull (con esto, se obtiene la última versión del repositorio, y el archivo index.html está disponible en el servidor)
  11. Como último detalle, sería buena idea agregar un archivo de texto llamado “.htaccess” dentro de la misma carpeta que index.html con el siguiente texto: RedirectMatch 403 /\..*$ para evitar que alguien pueda acceder a los archivos de GIT.

Fin (✪㉨✪)