git

Crear un nuevo proyecto compartido en git

in

Aquí en la oficina hemos estado utilizando git desde hace ya algunos meses. Una de las cosas que nos daba más flojera hacer era crear repositorios públicos que pudiéramos compartir varios compañeros aquí en la oficina. Los pasos que vienen en el Manual de git para crear un repositorio público son algo tediosos, porque involucran clonar tu repositorio localmente y después copiarlo a la ubicación pública, lo que puede ser muy pero muy tardado si tu repositorio es grande y tu ubicación pública está en otro servidor.

Hace poco, en github encontramos una alternativa diferente para hacer esto, en donde primero creas el repositorio vacío en tu ubicación pública y después "empujas" tu proyecto desde git.

  1. Crear una carpeta vacía para tu proyecto en la ubicación pública

    tu@public:$ cd /var/cache/git
    tu@public:$ mkdir my-new-repo.git
    
  2. En esa carpeta creas un repositorio vacío (bare) de git

    tu@public:$ cd my-new-repo.git
    tu@public:$ git --bare init
    
  3. Y finalmente, desde tu repositorio local creas un canal remoto para git y empujas tu proyecto:

    tu@local:$ cd existing_git_repo
    tu@local:$ git remote add origin tu@publico:/var/cache/git/my-new-repo.git
    tu@local:$ git push origin master
    

Y eso es todo, ahora git copiará todos tus archivos a través de la red de manera más eficiente que si utilizaras ftp o scp. Enjoy!

Backups de MySQL con git

Brian Aker, desarrollador de mysql, sugirió una manera "inteligente o extraña" de hacer backups de tu base de datos utilizando mercurial (un sistema control de versiones distribuido).

Nosotros en axai veníamos utilizando un sistema parecido, con la diferencia de que nosotros utilizamos git en vez de mercurial y que tampoco conocíamos la opción --tab del comando mysqldump. Esta opción es la que logra hacer que este método para backups sea todavía más útil, ya que al revisar la historia de tu base de datos podrás ver exactamente que cambios a sufrido con el paso del tiempo.

Este método de backups en resumidas cuentas tiene las siguientes ventajas:

  • Buscar en tu historial de backups
  • Ver los cambios entre una fecha y otra
  • Hacer restauraciones parciales (de algunas tablas solamente)

CVS desde git, y como mantenerlos sincronizados

Llevo algún rato intentando rastrear de manera eficaz algunos módulos de drupal que están en desarrollo: spaces y context.

Lamentablemente, en drupal todavía usan CVS para administrar el código. El código que usan para administrar los projectos en drupal.org (releases, registro de bugs, descargas, etc) está basado en CVS, y aunque poco a poco avanzan para hacerlo más independiente de CVS y poder utilizar subversion o cualquier otra cosa, pues es algo que va a tomar todavía algo de tiempo.

Compilando git en ubuntu 7.10

Git es un sistema de control de versiones distribuido. Es decir, un programa tipo subversion o CVS pero que funciona también cuando no estás conectado a internet.

En Ubuntu 7.10 puedes instalar git usando apt-get. Lamentablemente la versión que instala es la 1.5.2 que ya es algo viejita. Actualmente git está en la versión 1.5.4 que trae bastantes mejoras, particularmente las que te permiten manejar submódulos en git (introducidas desde la versión 1.5.3).

Distribuir contenido

Back to top